容器数据卷是为了实现容器的持久化和同步操作,它完全独立于容器的生命周期,容器间也可以实现数据共享的 (多个容器可以共享一个地方的数据),因此,Docker 不会在容器删除时删除其挂载的数据卷,也不会存在类似的垃圾回收机制,对容器引用的数据卷进行处理
容器数据卷技术保障容器被删除后,数据不丢失
docker run -d -p 8080:8080 --name tomcat -v /usr/local/tomcat/webapps tomcat
参数解析:
-d 后台启动
-p 端口映射
--name 容器名称
-v 数据卷挂载,/usr/local/tomcat/webapps 为容器内路径
挂载后通过 docker volume ls 可查看所有的数据卷
通过 docker inspect 容器 id 也可查看容器 mount 的数据卷
注:volume name 是随机生成的字符串
docker run -d -p 8080:8080 --name tomcat -v volumeName:/usr/local/tomcat/webapps tomcat
挂载后通过 docker volume ls 可看到 volumeName 名称的数据卷
docker run -d -p 8080:8080 --name tomcat -v /root/webapps:/usr/local/tomcat/webapps tomcat
支持多重挂载,如/root/webapps 已挂载到 tomcat 容器,同样 它也可以继续挂载到别的容器
docker run -d -p 8081:8080 --name tomcat1 -v /root/webapps:/usr/local/tomcat/webapps tomcat
挂载模式:
ro:readonly,容器中被挂载的目录在容器中只能进行读
rw:readwrite(默认),容器中被挂载的目录在容器中可读可写
docker run -d -p 8080:8080 --name tomcat -v /root/webapps:/usr/local/tomcat/webapps:ro tomcat
end~~~