Docker_基础篇_6.本地镜像发布到私有库

一、简单了解

Docker Hub 和阿里云这样的公共镜像仓库某些情况下不太方便使用,涉及机密的公司不能提供镜像给公网,需要创建本地私人仓库供团队使用,其中Docker Hub 官方地址:https://hub.docker.com/
Docker Registry是官方提供的工具,可用于构建私有镜像仓库。

二、本地镜像推送到私有库步骤

1 拉取 registry 镜像

docker pull registry

2 运行私有库Registry,相当于本地有个私有Docker Hub

docker run -d -p 5000:5000 -v /summeruse/myregistry/:/tmp/registry --privileged=true registry

说明:

-d: 后台运行容器并返回容器ID,也即启动守护式容器(后台运行)-p:指定端口映射
默认情况下,仓库被创建在容器的/var/lib/registry/目录下,建议自行用容器卷映射(会在下一篇中记笔记),方便宿主机联调
/summeruse/myregistry/:也可根据自己的命名风格写

3 案例演示:ubuntu安装ifconfig命令

  • 从Hub下载ubuntu镜像到本地并成功运行 略
  • 原始的ubuntu不带ifconfig命令 略
  • 外网连通的情况下,安装ifconfig命令并测试通过
docker run -it ubuntu /bin/bash
apt-get update
apt-get install net-tools

在这里插入图片描述

  • 安装完成后 commit成我们自己的新镜像
docker commit -m="ifconfig cmd add" -a="summer" 006636c2b78d summerubuntu:1.2

说明:commit用法

docker commit -m="提交的描述信息" -a="作者" 容器ID 创建的目标镜像名:[标签名]

在这里插入图片描述

  • 启动新镜像和原来的对比
docker run -it dd73ca32c43c /bin/bash

4 curl验证私服库上有哪些镜像

curl -XGET http://主机ip地址:5000/v2/_catalog

注意:填写自己host主机ip地址,如果是阿里云或者其它的云服务器一定要在安全组中放开相应端口,否则会出现超时连接错误。

5 将新镜像summerubuntu:1.2 修改符合私服规范的Tag

docker tag 镜像名:Tag Host:Port/Repository:Tag
docker tag summerubuntu:1.2 主机ip地址:5000/summerubuntu:1.2

在这里插入图片描述

6 修改配置文件使之支持http

vim /etc/docker/daemon.json

添加

 "insecure-registries":["ip:5000"]

注意:docker默认不允许http方式推送镜像,通过配置来取消这个限制。如果不生效,重启docker

systemctl restart docker
systemctl status docker
docker run -d -p 5000:5000 -v /summeruse/myregistry/:/tmp/registry --privileged=true registry

7 push推送到私服库

docker push 主机ip:5000/summerubuntu:1.2

8 curl验证私服库上有哪些镜像2

curl -XGET http://主机ip:5000/v2/_catalog

在这里插入图片描述

9 pull到本地运行

先删除本地镜像

docker images
docker rmi -f 镜像ID
docker pull ip:5000/summerubuntu:1.2

在这里插入图片描述
下一篇:Docker_基础篇_7.Docker容器数据卷

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值