Docker数据卷、数据卷容器操作及私有镜像仓库搭建

一、Docker的数据管理

  • 数据管理操作
  1. 方便查看容器内产生的数据
  2. 多容器间实现数据共享
  • 两种管理方式
  1. 数据卷
  2. 数据卷容器

二、数据卷

  • 数据卷是一个提供容器使用的特殊目录
  • 数据卷是Docker管理宿主机文件系统的一部分(/var/lib/docker/volumes)是保存数据的最佳方式
  • 创建数据卷
docker run -d -v /data1 -v /data2 --name web httpd:centos
  • 挂载主机目录作为数据卷
docker run -d -v /var/www:/data1 --name web-1 httpd:centos

三、数据卷容器

  • bind mounts:将宿主机上的任意位置的文件或者目录挂载到容器中。

  • 创建数据卷容器

docker run --name web10 -v /data1 -v /data2 -it centos /bin/bash
  • x新容器挂载数据卷容器web10
docker run -it --volumes-from web10 --name db1 centos /bin/bash

四、私有镜像仓库搭建

1、下载所需镜像

docker pull registry

2、编辑并修改配置文件

vim /etc/docker/daemon.json

添加一行内容:
"insecure-registries":["192.168.50.140:5000"],    ## 逗号不能少,否则待会重启docker会报错

3、创建容器

docker create -it registry bash

4、启动容器

docker start 0eeb3040cfe7   ## start后面跟容器ID号

5、将宿主机的/data/registry自动创建挂载容器中的/tmp/registry

docker run -d -p 5000:5000 -v /data/registry:/tmp/registry registry

6、将要上传仓库的镜像更新打上标签

docker tag nginx:latest 192.168.50.140:5000/nginx

7、获取私有仓库列表

curl -XGET http://192.168.50.140:5000/v2/_catalog
{"repositories":["nginx"]}    ## 返回这个说明上传成功

8、上传镜像到仓库

docker push 192.168.50.140:5000/nginx

9、从仓库中下载刚才上传的镜像

docker pull 192.168.50.140:5000/nginx

五、端口映射方法

  • 需求:现在想在宿主机上访问容器中的nginx默认web页面

  • 步骤:

1、下载nginx镜像

docker pull nginx

2、运行容器

docker run -d -P 192.168.50.140:5000/nginx    ## -P 随机指定映射端口

3、查看映射端口号

docker ps -a

4、打开宿主机浏览器,访问192.168.50.140:端口号即可访问到容器内的nginx

六、容器互联

  • 需求:让容器1与容器2的网络互通

1、创建容器1

docker run -itd -P --name web1 centos:7

2、创建容器2

docker run -itd -P --name web2 --link web1:web1 centos:7 bash

3、在容器2上使用ping命令测试到容器1是否可以连通,如果可以说明成功

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值