Docker 基本操作 数据卷 -- docker 数据卷基本操作挂载数据卷

Posted CodeJiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 基本操作 数据卷 -- docker 数据卷基本操作挂载数据卷相关的知识,希望对你有一定的参考价值。

文章目录

1. docker 数据卷基本操作


1.1 容器与数据耦合的问题


1.2 数据卷介绍


1.3 数据卷的基本语法

补充说明:也可以使用docker volume --help命令来查看数据卷的基本语法


1.4 创建一个数据卷,并查看数据卷在宿主机的目录位置

按照下面步骤操作即可:

这是我查看我的html数据卷的截图:


1.5 小结


2. 挂载数据卷


2.1 基本语法


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

上一个案例


2.2.1 步骤1:创建容器并挂载数据卷到容器内的HTML目录

命令行输入:docker run --name mn -v html:/usr/share/nginx/html -p 80:80 -d nginx
运行结果:

补充说明:

如果事先没有创建好html数据卷,执行该目录会自动帮你创建名为html的数据卷,然后帮你挂载到容器上面。


2.2.2 进入html数据卷所在位置,并修改HTML内容

我们先查看数据卷挂载的位置:

这里是我的位置:/var/lib/docker/volumes/html/_data

然后进入该目录:

然后就使用vim编辑器修改index.html文件即可。

命令行输入:vim ./index.html


2.2.3 验证是否修改成功

我们去访问nginx容器:

我们先查看linuxip

然后就可以在我们的Windows上面访问了:游览器url栏输入http://192.168.135.130:80即可访问

可以看见,已经修改成功了。


2.3 小结


3. 直接挂载目录 / 文件


3.1 与数据卷挂载方式做对比


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


3.2.1 拉取mysql镜像

终端输入:docker pull mysql


3.2.2 创建目录/tmp/mysql/data,/tmp/mysql/conf


3.2.3 在/tmp/mysql/conf 目录创建hmy.cnf文件,然后往里面写入配置信息

然后使用vim往这个文件里面写入:

[mysqld]
skip-name-resolve
character_set_server=utf8
datadir=/var/lib/mysql
server-id=1000

3.2.4 去DockerHub查阅资料,创建并运行MySQL容器

控制台输入:

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

运行结果:

发现现在data目录多了许多文件,说明挂载成功了:

我们现在使用本地windowsnavicat连接现在的mysql

使用ifconfig查看linux ip地址,这是我的地址192.168.135.130


3.3 小结



以上是关于Docker 基本操作 数据卷 -- docker 数据卷基本操作挂载数据卷的主要内容,如果未能解决你的问题,请参考以下文章

Docker创建私有仓库 | 数据卷和数据卷容器 | 容器互联 操作详解

Docker创建私有仓库 | 数据卷和数据卷容器 | 容器互联 操作详解

Docker-基础使用:安装,启用,基本命令,数据卷

Docker的基本操作——数据卷操作

docker安装和各种操作

Docker中的数据卷