回忆上次的volume的方式,源码https://github.com/limingios/docker No.3 方便学习数据持久化存储
docker run -v /home/aaa:/root/aaa cd ~
cd labs/docker-nginx/
more Dockerfile 
sudo service docker restart
docker build -t liming/nginx .
sudo docker image ls 

sudo docker run -d -p 80:80 --name web liming/nginx
curl 127.0.0.1
ip a 


#删除原来的容器
sudo docker rm -f web
#容器内的80对外部的80,pwd对应/usr/share/nginx/html的
sudo docker run -d -p 80:80 -v $(pwd):/usr/share/nginx/html --name web liming/nginx
curl 127.0.0.1
sudo docker exec -it web /bin/sh
cd /usr/share/nginx/html
#在数据持久化目录里面增加文件aaa.test
touch aaa.test
exit 
cd ~/labs/docker-nginx/
#查看路径已经多了一个文件aaa.test
ls
#修改aaa.test文件内容
vim aaa.test
sudo docker exec -it web /bin/sh 


sudo docker exec -it web /bin/sh
#容器内可以看到数据持久化的信息
more aaa.test 
个人主页:IT人故事会
PS:bind mount 需要指定 host 文件系统的特定路径,这就限制了容器的可移植性,当需要将容器迁移到其他 host,而该 host 没有要 mount 的数据或者数据不在相同的路径时,操作会失败。但是我感觉已经很方便了。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/3104/viewspace-2806015/ ,如需转载,请注明出处,否则将追究法律责任。