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# cd webapps/ROOT/ root@a569649fcc5a:/usr/local/tomcat/webapps/ROOT# ls index.html root@a569649fcc5a:/usr/local/tomcat/webapps/ROOT# cat index.html <!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-参数