docker的数据卷管理

Posted

tags:

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

  1. mkdir  -p  /data/volumes

  2. 挂载目录

[[email protected] ~]# docker run -d  --name nginx-volumes   -v  /data/volumes:/data  nginx 
1263f51d5bd1114c7f1582a0efb68266ce367629f01a64693cd15cf115165392
本地的  /data/volumes   挂载到容器的/data  目录下

3.进入容器写文件测试

[[email protected] ~]# docker ps -a 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                               NAMES
1263f51d5bd1        nginx               "nginx -g ‘daemon off"   5 minutes ago       Up 5 minutes        80/tcp, 443/tcp                     nginx-volumes
a04f5eee61b5        nginx               "nginx -g ‘daemon off"   15 minutes ago      Up 15 minutes       443/tcp, 59.110.25.215:89->80/tcp   dokcer-volumes
1f3d2f356995        nginx               "nginx -g ‘daemon off"   41 minutes ago      Up 41 minutes       443/tcp, 59.110.25.215:88->80/tcp   mynginx
[[email protected] ~]# bash dockerin.sh 1f3d2f356995

[email protected]:/# cd  /data
[email protected]:/data# ls
[email protected]:/data# touch   test01  test02
[email protected]:/data# ls
test01	test02
[email protected]:/data#

4.linux本机查看

[[email protected] volumes]# ll
total 0
-rw-r--r-- 1 root root 0 Jan  3 22:16 test01
-rw-r--r-- 1 root root 0 Jan  3 22:16 test02
[[email protected] volumes]# pwd
/data/volumes
[[email protected] volumes]#

5.挂载多个目录

[[email protected] volumes]# docker run  -d --name nginx-volumes02  -v /data/volumes2:/data/volumes2  -v  /data/volumes3:/data/volumes3 nginx 
5b33955e8addab36c3c183a754d7f82e3ba6c94f1b865d1f4ef366af8ba9e67b
[[email protected] volumes]# 


[[email protected] ~]# bash dockerin.sh 5b33955e8addab36c
[email protected]:/# cd /data/
[email protected]:/data# ls
volumes2  volumes3
[email protected]:/data# touch  volumes2/002
[email protected]:/data# touch  volumes3/003
[email protected]:/data# 

也是完全OK的
[[email protected] data]# tree   
.
├── volumes
│   ├── test01
│   └── test02
├── volumes2
│   └── 002
└── volumes3
    └── 003

3 directories, 4 files
[[email protected] data]#

6.docker的劵共享机制

[[email protected] data]# docker run -d --name nginx-volumes-from --volumes-from nginx-volumes02 nginx 
3342b2a88ba7121ec19e66fc388d8a19e5499e93fe786452bba295f66c9a1904

 nginx-volumes02是一个容器,此容器挂载了两个目录
 那么nginx-volumes-from将继承nginx-volumes02的目录,不管nginx-volumes02是否运行
 [[email protected] ~]# bash dockerin.sh  3342b2a88ba7121e
 [email protected]:/data# cd volumes2
[email protected]:/data/volumes2# ls
002
[email protected]:/data/volumes2# touch 00vo
[email protected]:/data/volumes2# cd  ../
[email protected]:/data# ls
volumes2  volumes3
[email protected]:/data# cd volumes3
[email protected]:/data/volumes3# ls
003
[email protected]:/data/volumes3# touch 003vo
[email protected]:/data/volumes3# 
 
 
linux系统查看
[[email protected] data]# tree 
.
├── volumes
│   ├── test01
│   └── test02
├── volumes2
│   ├── 002
│   └── 00vo
└── volumes3
    ├── 003
    └── 003vo

3 directories, 6 files
[[email protected] data]#


本文出自 “砖家博客” 博客,请务必保留此出处http://wsxxsl.blog.51cto.com/9085838/1888733

以上是关于docker的数据卷管理的主要内容,如果未能解决你的问题,请参考以下文章

Docker数据卷(volume)管理

Docker----数据卷安全

docker——docker数据管理

Docker 数据管理(数据卷容器/镜像创建)

Docker 数据管理(数据卷容器/镜像创建)

Docker 数据管理(数据卷容器/镜像创建)