Docker镜像发布到阿里云/私有库

一、本地镜像发布到阿里云

1.制作本地镜像

首先我们需要先将已经运行的容器,我们运行一个Ubuntu的镜像,并安装ifconfig工具,再commit

# docker run -it --name="u1" ubuntu bash
    # apt-get update
    # apt-get install net-tools

 再进行commit

 2.创建阿里云公有库

登录阿里云,进入容器镜像服务>实例列表,选择命名空间,点击创建命名空间 

 创建命名空间完成

 再点到镜像仓库

 选择我们刚才创建的命名空间,点击创建镜像仓库

 输入仓库名称和描述,选择公开,点击下一步

 选择本地仓库,点击创建镜像仓库

 创建完毕后,这里有非常详细的步骤教程,非常人性化!

3.将镜像推送到阿里云公有库

接下来我们根据提示将镜像推送到阿里云仓库

在登录时,他会要求你输入密码,所以要记好你的密码

 我们将whr/ubuntu推送到阿里云上

 我们将原来的镜像删除,删除后重新在阿里云上拉取测试

 在阿里云上拉取我们的镜像

 跑一下这个镜像可以进行ifconfig命令

二、本地镜像发布到私有库

1.docker registry

官方Docker Hub地址:https://hub.docker.com/,中国大陆访问太慢了且即将被阿里云取代的趋势,不太主流。 Docker hub、阿里云这样的公共镜像仓库可能不太方便,涉及机密的公司不可能提供镜像给公网,所以需要创建一个本地私人仓库供给团队使用,基于公司内部项目构建镜像。
Docker Registry是官方提供的工具,可以用于构建私有镜像仓库。

2.本地镜像推送私有仓库

①下载镜像Docker Registry

#docker pull registry

 ②运行私有库

docker run -d -p 5000:5000  -v /whr/myregistry/:/tmp/registry --privileged=true registry
默认情况,仓库被创建在容器的/var/lib/registry目录下,建议自行用容器卷映射,方便于宿主机联调

 ③commit一个镜像

 ④查看私库里的镜像

curl -XGET http://本机IP:5000/v2/_catalog

显示为空,因为我们还没有推送镜像

 ⑤将镜像打包

将镜像打包成符合私有库规范的tag   # docker   tag   镜像:Tag   Host:Port/Repository:Tag

 ⑥修改配置文件

修改docker的配置文件,使其支持http

# cat /etc/docker/daemon.json 
{
  "registry-mirrors": ["https://xb2s49ki.mirror.aliyuncs.com"],
  "insecure-registries": ["192.168.43.184:5000"]
}

 docker默认不允许http方式推送镜像,通过配置选项来取消这个限制。修改完配置文件后,重启docker,重启docker后容器就关了,重新启动即可

⑦推送到私有库

 # docker push 192.168.43.184:5000/whr/ubuntu:1.0

 ⑧验证私有库

查看私有库上是否有镜像

# curl -XGET http://192.168.43.184:5000/v2/_catalog
可以看到,私有库上已经有了我们创建的镜像

 ⑨验证

将原有的镜像删除后再从私有库上下载

 已经将镜像删除,我们再进行拉取

 完成拉取,跑一下镜像,可以正常运行。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大白将

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值