Docker - volumes and mount

Dzielimy na dwa typy:

  • Data Volumes - wolumen wirtualnego dysku
  • Bind Mounting - linkowanie mount do lokalnego dysku systemu operacyjnego

Data Volumes

Dla przykładu zróbmy wspólny Volumen dla dwóch kontenerów baz danych postgres o różnych wersjach:

$ docker run -d --name psql1 -v psql:/var/lib/postgresql/data postgres:9.6.10
$ docker run -d --name psql2 -v psql:/var/lib/postgresql/data postgres:9.6.5
$ docker volume ls
DRIVER              VOLUME NAME
local               psql

Bind Mount - current dir

Najprostrzy sposób aby uruchomić serwer httpd z katalogiem aktualnym katalogiem w którym uruchamiany jest skrypt (Windows podmień fragment $(pwd) -> ${pwd}).

$ docker run --rm -d -p 80:80 -v $(pwd):/usr/local/apache2/htdocs/ httpd:2.4

..