[013]操作系统原理系列 | 将数据从宿主机挂载到容器三种方式(二) Volumes

一、创建数据卷

在此阅读之前,请先阅读《[013]操作系统原理系列 | 将数据从宿主机挂载到容器三种方式(一) 简要说明

# 创建数据卷
$ docker volume create nginx_vol

# 查看本地数据卷
$ docker volume ls

# 查看本地数据卷信息
$ docker volume inspect nginx_vol

挂载点:数据实际存储地方,即使删除容器,数据依然存在!!! 

二、用卷创建容器

2.1查看nginx站点 

# 创建一个nginx容器
$ docker run -d nginx

# 查看容器(xxx ID)
$ docker exec -it xxx bash
$ ls /usr/share/nginx/html/
$ exit

从上面可以知道:站点目录在 /usr/share/nginx/html/

2.2用卷创建容器

# 用卷创建容器(将docker里面的/usr/share/nginx/html目录与宿主机共享)
$ docker run -d --name nginx01 --mount src=nginx_vol,dst=/usr/share/nginx/html nginx

# 查看容器
$ docker inspect nginx01 | more

注意:

有两种方式用卷创建容器:

  • docker run -d --name nginx01 --mount src=nginx_vol,dst=/usr/share/nginx/html nginx  (更通用!!!)
  • docker run -d --name nginx01 -v nginx_vol:/usr/share/nginx/html nginx

# 查看宿主机下目录
$ ls /var/lib/docker/volumes/nginx_vol/_data

 2.3用卷创建容器(端口映射)

$ docker run -d --name nginx02 -p 99:80 --mount src=nginx_vol,dst=/usr/share/nginx/html nginx

修改vim /var/lib/docker/volumes/nginx_vol/_data/index.html的文件

 

浏览器访问:

查看容器里面文件变化情况(/usr/share/nginx/html/

$ docker exec -it nginx02 bash
$ cat /usr/share/nginx/html/index.html 

和宿主机上面文件一样!!!说明两者共享数据!!! 

三、清理数据卷

# 查看数据卷列表
$ docker volume ls

# 停止用卷创建的容器
$ docker stop nginx01
$ docker stop nginx02

# 删除用卷创建的容器
$ docker rm nginx01
$ docker rm nginx02

# 清理数据卷
$ docker volume rm nginx_vol
$ docker volume ls

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值