Docker 数据管理_数据卷
作者:互联网
为什么使用数据卷
什么叫数据卷
Docker中的数据可以存储在类似于虚拟机磁盘的介质中,在Docker中称为数据卷(Data Volume)
数据卷作用
容器数据持久化。
外部机器和容器间接通信。容器之间数据交换。
一句话:卷技术就是为了实现数据的持久化和同步操作,容器间也是数据共享。
一个数据卷可以同时被多个容器同时挂载。
一个容器也可以被挂载多个数据卷。
配置数据卷
命令
docker run -v 宿主机目录:容器内目录
示例
tomcat持久化
docker run -d --name mytomcat -p 8080:8080 -v
/opt/webapps:/usr/local/tomcat/webapps tomcat
volume基本使用
参数:
create # 创建数据卷
inspect #查看数据卷元数据
ls #查看数据卷列表
prune #删除所有未使用的卷
rm #删除数据卷
创建一个自定义容器
docker volume create edc-tomcat-vol
查看所有容器
docker volume ls
查看指定容器卷详情信息
docker volume inspect edc-tomcat-vol
删除数据卷
docker volume rm edc-tomcat-vol
使用指定卷容器
docker run -d -it --name=edc-tomcat -p 8080:8080 -v edc-tomcatvol:/usr/local/tomcat/webapps tomcat
-v代表挂载数据卷,这里使用自定数据卷edc-tomcat-vol,并且将数据卷挂载到/usr/local/tomcat/webapps。如果没有通过-v指定,那么Docker会默认帮我们创建匿名数据卷进行映射和挂载。
mysql持久化
docker run -d -p 3306:3306 \
-v /opt/mysql/conf:/etc/mysql/conf.d \
-v /opt/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 --name my-mysql mysql:5.7
语法格式
-V 容器内路径 #匿名挂载
-v 卷名:容器内路径 #具名挂载
-v /宿主内路径:容器内路径 #指定路径挂载
ro readonly # 只读
rw readwrite # 可读可写
示例
docker run -d -P --name tomcat -v my-nginx:/etc/nginx:ro tomcat
docker run -d -P --name tomcat -v my-nginx:/etc/nginx:rw tomcat
标签:容器,tomcat,数据管理,mysql,挂载,Docker,数据,docker 来源: https://www.cnblogs.com/Liguangyang/p/16534592.html