Docker数据卷
数据卷 是一个可供一个或多个容器使用的特殊目录,它绕过 UFS,可以提供很多有用的特性:
- 数据卷 可以在容器之间共享和重用
 
- 对 数据卷 的修改会立马生效
 
- 对 数据卷 的更新,不会影响镜像
 
- 数据卷 默认会一直存在,即使容器被删除
 
注意:数据卷 的使用,类似于 Linux 下对目录或文件进行 mount,镜像中的被指定为挂载点的目录中的文件会隐藏掉,能显示看的是挂载的 数据卷。

数据卷 Docker容器的数据持久化
使用数据卷
1 2 3 4 5 6
   | ➜  ROOT sudo docker run -p 8083:8080 --name volumeDemo -d -v /usr/local/docker/tomcat/ROOT:/usr/local/tomcat/webapps/ROOT tomcat [sudo] password for ziming:  52ae0e61dcf59e6f02f3a05c2173fd5c7d8966e99c0bda725573cae58b393fed ➜  ROOT sudo docker run -p 8083:8080 --name volumeDemo -d -v /usr/local/docker/tomcat/ROOT:/usr/local/tomcat/webapps/ROOT tomcat [sudo] password for ziming: 52ae0e61dcf59e6f02f3a05c2173fd5c7d8966e99c0bda725573cae58b393fed
   | 
 
docker exec -it tomcat bash交互的方式进入
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
   | tomcat sudo docker run -p 8083:8080 --name volumeDemo -d -v /us r/local/docker/tomcat/ROOT/:/usr/local/tomcat/webapps/ROOT tomcat a569649fcc5abaf4dbf4b6be4bd031ce57cafe27e7082fd687f90e3ab2244a78 ➜  tomcat sudo docker exec -it volumeDemo bash root@a569649fcc5a:/usr/local/tomcat root@a569649fcc5a:/usr/local/tomcat/webapps/ROOT index.html root@a569649fcc5a:/usr/local/tomcat/webapps/ROOT <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Docker文件测试</title> </head>
  <body> 	<h1>Hello Docker</h1> 	<h2>数据卷测试页</h2> </body>
  </html> root@a569649fcc5a:/usr/local/tomcat/webapps/ROOT
   | 
 
查看结果
- 
volumeDemo

 
- 
volumeDemo1

 
参考资料
https://www.funtl.com/zh/docker/Docker-数据卷.html#选择-v-还是-–mount-参数