$ docker container run -d -p 8080:80 nginx
85098f9922557812e492c4d48be69ce3cb7b3db4310c0b9a4b42d85d28dd8dfb
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
85098f992255 nginx "/docker-entrypoint.…" 15 seconds ago Up 15 seconds 0.0.0.0:8080->80/tcp, :::8080->80/tcp stoic_austin
/tmp/volume/bind$ mkdir html
/tmp/volume/bind$ touch html/index.html
/tmp/volume/bind$ tree
.
├── Dockerfile
├── html
│ └── index.html
└── vol
├── teste.txt
├── teste2.txt
└── teste3.txt
2 directories, 5 files
/tmp/volume/bind$ vim html/index.html
/tmp/volume/bind$ cat html/index.html
<h1>Teste</h1>
Formas de mapeamento
Mapear o diretório /tmp/volume/bind/html no diretório que o NgInx utiliza para apresentar seu index.html
Remover o container em execução:
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
85098f992255 nginx "/docker-entrypoint.…" 13 minutes ago Up 13 minutes 0.0.0.0:8080->80/tcp, :::8080->80/tcp stoic_austin
$ docker container rm -f 85098f992255
8509
$ docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Execução do container:
/tmp/volume/bind$ docker container run -d -p 8080:80 -v $(pwd)/html:/usr/share/nginx/html nginx
1c2f08e9713c5dd883be005074154600eb5468d44dc8d889393efc9bd665db35
/tmp/volume/bind$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
1c2f08e9713c nginx "/docker-entrypoint.…" About a minute ago Up About a minute 0.0.0.0:8080->80/tcp, :::8080->80/tcp sleepy_pascal
Mapear um arquivo específico
Exclusão do container em execução:
/tmp/volume/bind$ docker container rm -f 1c2f08e9713c
1c2f08e9713c
marcelo@Latitude5440:/tmp/volume/bind$ docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Execução do container:
$ docker container run -d -p 8080:80 -v $(pwd)/html/index.html:/usr/share/nginx/htm
l/index.html nginx
b4ff063a485961fd61519ab5188e95d31be1e3477f8345d2296f0b885564d5c1
/tmp/volume/bind$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
b4ff063a4859 nginx "/docker-entrypoint.…" 8 seconds ago Up 8 seconds 0.0.0.0:8080->80/tcp, :::8080->80/tcp recursing_gagarin
Principal desvantagem: O arquivo é gerenciado pelo usuário e não pelo Docker