您好,欢迎来到尔游网。
搜索
您的当前位置:首页Docker学习(四)Docker容器的数据卷和数据卷挂载

Docker学习(四)Docker容器的数据卷和数据卷挂载

来源:尔游网

一、数据卷

1、容器存在的问题:

2、数据卷的作用:

将容器与数据分离,解耦合,方便操作容器内数据,保证数据安全。

3、数据卷的定义:

4、数据卷操作的基本语法如下:

1、新增和查询数据卷

#创建一个volume
docker volume create 数据卷名称

#列出所有的volume
docker volume ls

#显示一个或多个volume的信息
docker volume inspect 数据卷名称

效果如下:html 文件夹的名称以及路径

2、删除数据卷,命令如下:

#删除一个或多个指定的volume
docker volume rm 数据卷名称

#删除未使用的volume
docker volume prune 数据卷名称

二、数据卷的挂载

命令如下:

docker run \
  --name mn \
  -v html:/root/html \
  -p 8080:80
  nginx \

docker run :就是创建并运行容器

-- name mn :给容器起个名字叫mn

-p 8080:80 :把宿主机的8080端口映射到容器内的80端口

nginx :镜像名称

案例:创建一个nginx容器,修改容器内的html目录内的index.html内容

1、命令:

docker run \
--name myNginx \
-d \
-p 8080:80 \
-v html:/usr/share/nginx/html \
nginx:latest

 2、查询是否挂载成功

# 查看html数据卷的位置
docker volume inspect html

# 进入该目录
cd /var/lib/docker/volumes/html/_data

# 修改文件
vi index.html

注意:如果容器运行时volume不存在,会自动被创建出来。

案例:创建并运行一个MySQL容器,将宿主机目录直接挂载到容器

-v [宿主机文件]:[容器内文件]   这种会把宿主机的文件直接覆盖到容器内部的文件。

命令如下:

docker run \
--name mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d \
-v /tmp/mysql/conf/hmy.cnf:/etc/mysql/conf.d/hmy.cnf \
-v /tmp/mysql/data:/var/lib/mysql \
-p 3306:3306 \
mysql:5.7.25

-e :设置密码

3、宿主机还可以进行文件挂载,可以对容器的文件进行合并执行。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- axer.cn 版权所有 湘ICP备2023022495号-12

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务