首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >《Netkiller Virtualization 手札》Docker 卷管理

《Netkiller Virtualization 手札》Docker 卷管理

作者头像
netkiller old
发布2018-03-05 18:25:39
发布2018-03-05 18:25:39
1K0
举报
文章被收录于专栏:NetkillerNetkiller

本文节选择《Netkiller Virtualization 手札》Docker 卷管理

1.5. 卷管理

1.5.1. 列出卷

docker volume ls

代码语言:javascript
复制
# docker volume ls
DRIVER              VOLUME NAME
local               dbac41b6de88c75d2932d5949367b17f347f482977d508195375dbc71518ab27			

1.5.2. 创建卷

代码语言:javascript
复制
# docker volume create --name WebVolume1
WebVolume1			
代码语言:javascript
复制
# docker volume ls
DRIVER              VOLUME NAME
local               WebVolume1
local               dbac41b6de88c75d2932d5949367b17f347f482977d508195375dbc71518ab27			

1.5.3. 挂在镜像

代码语言:javascript
复制
# docker run -ti --rm -v WebVolume1:/www ubuntu
# docker run -ti --rm -v WebVolume1:/www docker.io/centos:7			

查看卷的挂载情况

代码语言:javascript
复制
# df | grep /www
/dev/vda1       20510332 7943940  11501484  41% /www			

创建测试文件

代码语言:javascript
复制
			# mkdir -p /www/netkiller.cn/www.netkiller.cn
# echo Helloworld > /www/netkiller.cn/www.netkiller.cn/index.html
# cat /www/netkiller.cn/www.netkiller.cn/index.html
Helloworld
# exit
exit			

1.5.4. 检查卷

代码语言:javascript
复制
# docker volume inspect WebVolume1
[
    {
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/WebVolume1/_data",
        "Name": "WebVolume1",
        "Options": {},
        "Scope": "local"
    }
]			

1.5.5. 删除卷

代码语言:javascript
复制
# docker volume create AppVolume1
# docker volume rm AppVolume1			

1.5.6. 销毁所有未使用的卷

代码语言:javascript
复制
# docker volume prune
WARNING! This will remove all volumes not used by at least one container.
Are you sure you want to continue? [y/N] y
Deleted Volumes:
WebVolume1
3fd379f8c2cf8727d2e83e84e434ea1f122016957bd7cf78a0f05b6e5a69cf2b
app

Total reclaimed space: 11 B			

1.5.7. 在多个容器间共享卷

容器一

代码语言:javascript
复制
			# docker run -ti --name=Container1 -v DataVolume1:/opt/data ubuntu			

容器二

代码语言:javascript
复制
			# docker run -ti --name=Container2 --volumes-from Container1 ubuntu			

进入容器一中查看数据

代码语言:javascript
复制
			# docker start -ai Container1			

容器三,挂在只读卷

代码语言:javascript
复制
			# docker run -ti --name=Container3 --volumes-from Container2:ro ubuntu						

删除上面三个测试容易和卷

代码语言:javascript
复制
			# docker rm Container1 Container2 Container3
# docker volume rm DataVolume1			

1.5.8. 容器绑定本地文件系统

Bind mount a volume (default [])
代码语言:javascript
复制
			# docker run -it --name mycentos1 -v /www:/tmp/test docker.io/centos:7 /bin/bash

# docker run -d -v ~/logs:/var/log/nginx -p 80:80 -i nginx			
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Netkiller 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.5. 卷管理
    • 1.5.1. 列出卷
    • 1.5.2. 创建卷
    • 1.5.3. 挂在镜像
    • 1.5.4. 检查卷
    • 1.5.5. 删除卷
    • 1.5.6. 销毁所有未使用的卷
    • 1.5.7. 在多个容器间共享卷
    • 1.5.8. 容器绑定本地文件系统
      • Bind mount a volume (default [])
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档