管理应用程序数据
数据卷 volume
创建数据卷 datavol01
用卷创建容器c_nginx
docker volume create datavol01
docker run -itd --name c_nginx --mount src=datavol01,dst=/usr/local/nginx/html nginx:v1
ls /var/lib/docker/volumes/datavol01/_data/
50x.html index.html
删除所有的容器
docker rm -f $(docker ps -q -a)
容器删除了,数据卷还在
docker run -itd --name c_nginx -p 666:80 --mount src=datavol01,dst=/usr/local/nginx/html nginx:v1
cd /var/lib/docker/volumes/datavol01/_data/
echo "<h1>HelloWorld</h1>" > test.html
浏览器访问 http://192.168.43.29:666/test.html
多个容器共享一个数据卷
docker run -itd --name c_nginx02 -p 999:80 --mount src=datavol01,dst=/usr/local/nginx/html nginx:v1
docker run -itd --name c_nginx03 -p 888:80 --mount src=datavol01,dst=/usr/local/nginx/html nginx:v1
没有指定卷
docker run -itd --name c_nginx04 -p 886:80 --mount src=,dst=/usr/local/nginx/html nginx:v1
Bind Mounts
将本地的目录挂载到容器中,本地的目录必须存在
docker run -itd --name c_nginx -p 1111:80 --mount type=bind,src=/app/wwwroot,dst=/usr/local/nginx/html nginx:v1
容器中已经有数据被隐藏
在本地创建一个文件,去容器中查看
echo "<h1>study</h1>" > /app/wwwroot/index.html