其他分享
首页 > 其他分享> > Docker 数据管理_数据卷

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