container 不保存数据,因此一旦container 停止并被删除之后,一些运行过程中产生的数据就消失了,volume的方式可以保存这些数据,这样一个新的image启动时候指定用某个volume就可以将数据reload。
docker volume 不需要另外安装
docker volume // 查看信息
docker volume create // 创建一个volume
docker volume ls // 查看本地的volume
docker volume inspect // 查看volume property
docker volume rm // 删除特定的volume
docker volume prume // 统一删除不用的volume以及相关的数据
例子:
docker volume create MyVol1 //创建本地vol
docker run --name MyJenkins1 -v MyVol1:/jenkins_home -p 8080:8080 -p 50000:50000 jenkins //指定vol 运行container
localhost:8080 打开jenkins 创建一条记录
随后run 第二个容器,指定同一个vol
localhost:9090
会发现刚才创建的记录也load进来了
docker run --name MyJenkins2 -v MyVol1:/jenkins_home -p 9090:8080 -p 50001:50000 jenkins
这样的话两个container可以share 数据
而如果以上的容器删除后,再run 新的容器也仍然可以看到数据被load 进来。
Youtube上一个关于volume的介绍视频,颇为简洁易懂
强行删除docker 的一些命令:
https://colobu.com/2018/05/15/Stop-and-remove-all-docker-containers-and-images/
网友评论