本地镜像发布到阿里云

本地镜像发布到阿里云流程

一.本地镜像发布到公有仓库步骤

1.登录阿里云控制台(我之前手机号注册的,登录选主账号登录-手机号登录)

https://home.console.aliyun.com/home/dashboard/ProductAndService

2.打开镜像容器服务,打开之前创建的个人实例
打开个人实例
3.打开‘命名空间’—‘创建命名空间’,并设置仓库类型为”公开“。
命名空间相当于Java包名
设置为公开
4.打开”镜像仓库“–”选择刚创建的命名空间“—”创建镜像仓库“
在这里插入图片描述
公开
选择本地仓库
5.创建完仓库后会自动生成一堆命令,按要求操作就行。复制黏贴,修改一下。
命令

注意:
在这里插入图片描述

二.本地镜像发布到私有库流程

DockerHub, 阿里云这样的公共镜像仓库可能不太方便,涉及机密的公司不可能提供镜像给公网,所以需要创建一个本地私人仓库供给团队用,基于公司内部项目构建镜像。Docker Registry这是官方提供的工具,可用于构建私有镜像仓库。

1.下载镜像Docker Registry
2.运行私有库Registry,相当于本地有个私有Docker Hub
3.案例演示创建一个新镜像,ubuntu安装ifconfig命令
4.curl验证私服库上有什么镜像  #这时是空的,没有镜像
5将新镜像修myubuntu:1.1.0修改符合私服规范的Tag -----> 公式:docker tag 镜像:Tag Host:Port/Repository:Tag
6.修改配置文件使之支持http
7.push推送到私服库
8.curl验证私服库上有什么镜像  #这时应该能看到推送上去的镜像
9.pull到本地并成功运行

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

docker run -it ubuntu /bin/bash
apt-get update 
apt-get install -y ifconfig
按ctrl+q+p退出,获得正在运行的unbuntu的容器id进行commit命令
docker commit -m='add ifconfig' -a='xman' 容器id myubuntu:1.1.0

curl -XGET http://172.17.0.1:5000/v2/_catalog  #查看私有仓库有哪些镜像,这个ip是你宿主机的ip(localhost),用ifconfig查看,后面的写死,(其实这里的ip写错了,写的是docker0的ip,也能跑通,貌似是因为桥接的是宿主机的网络。用localhost也能跑通= =)

按照公式修改符合私服规范: docker tag 镜像:Tag Host:Port/Repository:Tag  ----> tag是写死的,Tag是版本号
docker tag myubuntu:1.1.0 172.17.0.1:5000/myubuntu:1.1.0 #将新镜像myubuntu:1.1.0修改符合私服规范的Tag

#修改docke配置文件使之支持http,修改后建议重启docker,systemctl restart docker ,重启后要重新启动registry私服
cat etc/docker/daemon.json #先查看,没有的话直接下面vim创建
vim etc/docker/daemon.json
添加"insecure-registries":["1.2 172.17.0.1:5000"']进去配置文件

systemctl restart docker
systemctl status docker  #查看docker是否正常运行起来
docker run -d -p 5000:5000 -v /xman/myregistry/:/tmp/registry --privileged=true registry #重启docker后要重新启动registry私服容器

#docker images罗列出刚修改过的规范镜像,复制名字,记得加上版本号
docker push 172.17.0.1:5000/myubuntu:1.1.0    #1.1.0是自己手动加的版本号,‘172.17.0.1:5000’是docker images得到的步骤5的规范镜像

#上步推送完成了,检测私服仓库有哪些镜像
curl -XGET http://172.17.0.1:5000/v2/_catalog  #这时能看到你的镜像了

docker pull 172.17.0.1:5000/myubuntu:1.1.0  #这个版本貌似一定要的 ,如果忘记版本号就拉不下,怎么获取版本号呢??求解。。。网上别人没有版本号也能pull,我不行,要加版本号,,,

查看私服有哪些镜像
推送成功后的镜像仓库

将新镜像修改符合私服规范的Tag
推送规范
修改docker配置文件使之支持http
修改配置文件使之支持http
开始push镜像到私服,注意加版本号
开始push

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值