docker注册中心

2023-05-16

docker hub镜像上传

#1.修改镜像镜像加速器 
[root@sunrui ~]# cd /etc/docker/ 
[root@sunrui docker]# vi daemon.json 
{  "registry-mirrors": 
["https://registry.docker-cn.com"] 
} 
[root@sunrui docker]# systemctl daemon-reload 
[root@sunrui docker]# systemctl restart docker

#2.登录docker hub官网注册账号:https://hub.docker.com/signup

#3.登录账户,创建一个仓库 # “Create Repository”——》输入命名空间和仓库名——》“Description”填写描述信息——》“visibility”中选择是创建public仓库还是private仓库——》点击“Create”创建仓库 

#4.登录Docker Hub 
[root@sunrui ~]# docker login Login with your Docker ID to push and pull images from Docker Hub. If you dont have a Docker ID, head over to https://hub.docker.com to create one. 
Username: sunrui12138      # 输入创建的用户名 
Password:                 # 输入密码并按回车 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json. Configure a credential helper to remove this warning. See https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded

#5.构建镜像
[root@sunrui ~]# docker build -t sunrui12138/testdocker .
Sending build context to Docker daemon  865.3kB
Step 1/3 : FROM scratch
 ---> 
Step 2/3 : COPY hello /
 ---> 2322533b4210
Step 3/3 : CMD ["/hello"]
 ---> Running in 5994e2099b8d
Removing intermediate container 5994e2099b8d
 ---> 32fedb0d83ba
Successfully built 32fedb0d83ba
Successfully tagged sunrui12138/testdocker:latest

#6.为已存在的镜像重新设置标签
[root@sunrui ~]# docker tag 32fedb0d83ba sunrui12138/testdocker:22.03
[root@sunrui ~]# docker images
REPOSITORY              TAG                 IMAGE ID            CREATED              SIZE
sunrui12138/testdocker   22.03               32fedb0d83ba        About a minute ago   861kB
sunrui12138/testdocker   latest              32fedb0d83ba        About a minute ago   861kB

#7.推送镜像
[root@sunrui ~]# docker push  sunrui12138/testdocker:22.03
The push refers to repository [docker.io/sunrui2138/testdocker]
88dc11111fec: Pushed 
22.03: digest: sha256:c9225ad48cb94c8f160e839187e81ce28f85dbff8316e7443879f5169f41cfb0 size: 527

#8.在docker hub上检查推送的仓库
[仓库地址](https://hub.docker.com/repository/docker/sunrui12138/testdocker)

docker容器生成镜像提交给hub

#1.登录官网账户,创建一个仓库
# “Create Repository”——》输入命名空间和仓库名——》“Description”填写描述信息——》“visibility”中选择是创建public仓库还是private仓库——》点击“Create”创建仓库

#2.容器提交生成镜像
[root@sunrui ~]# docker commit 4decee095428 sunrui12138/ubuntu:22.03
sha256:a4b85b3fb73e23e75440430252477b77aee8927fdf9495160297b86dcf5f917c
[root@sunrui ~]# docker images
REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
sunrui12138/ubuntu       22.03               a4b85b3fb73e        6 seconds ago       72.8MB

#3.推送镜像
[root@sunrui ~]# docker push sunrui12138/ubuntu:22.03
The push refers to repository [docker.io/sunrui12138/ubuntu]
b954f8dfd459: Pushed 
9f54eef41275: Mounted from library/ubuntu 
22.03: digest: sha256:573bc189eba09934db466a2344edee5f46cd7d98fb765690b4ba7b1e9dd26624 size: 736

# 4.在docker hub上检查推送的仓库
[仓库地址](https://hub.docker.com/repository/docker/sunrui12138/ubuntu)

docker注册中心

#1.登录aliyun平台,注册登录
[阿里云官网地址](https://www.aliyun.com)

#2.在阿里云控制台创建仓库
# 打开阿里云控制台——》产品与服务列表——》弹性计算里的容器镜像服务,进入容器镜像服务控制台
# 点击“个人实例”——》点击左侧“镜像仓库”——》点击“创建镜像仓库”——》输入仓库名称、选择仓库类型、输入仓库的摘要或描述等信息——》点击“下一步”——》选择“本地仓库”——》点击“创建镜像仓库”

#3.设置registry登录密码
# 使用docker login通过密码登录镜像服务实例,需要先设置或获取临时密码或固定密码。
# 容器镜像服务——》个人实例——》仓库管理菜单里的访问凭证——》设置固定密码

# 4.登录阿里云Docker Registry
[root@sunrui ~]# docker logout
Removing login credentials for https://index.docker.io/v1/
[root@sunrui ~]# docker login --username=sunrui12138 registry.cn-hangzhou.aliyuncs.com
Password: 
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded

# 5.构建镜像
[root@sunrui ~]# docker build -t registry.cn-hangzhou.aliyuncs.com/sunrui/docker_test:22.03 .
Sending build context to Docker daemon  865.3kB
Step 1/3 : FROM scratch
 ---> 
Step 2/3 : COPY hello /
 ---> Using cache
 ---> 846e09a540e6
Step 3/3 : CMD ["/hello"]
 ---> Using cache
 ---> a5dbf1d93254
Successfully built a5dbf1d93254
Successfully tagged registry.cn-hangzhou.aliyuncs.com/sunrui/docker_test:22.03

# 6.将镜像推送到Registry
[root@sunrui ~]#  docker push registry.cn-hangzhou.aliyuncs.com/sunrui/docker_test:22.03
The push refers to repository [registry.cn-hangzhou.aliyuncs.com/sunrui/docker_test]
88dc11111fec: Pushed 
22.03: digest: sha256:b1d135c19b018cfbbba32085948cb125507b508549a8296568c25a81f5b0709b size: 527

# 7.验证镜像上传
# 访问容器镜像服务控制台——》个人实例——》镜像仓库——》点击仓库名docker_test——》点击镜像版本。可以看到我们上传的镜像。

docker自建注册中心

基于容器安装运行Registry

[root@sunrui ~]# docker pull registry
Using default tag: latest
latest: Pulling from library/registry
3d2430473443: Pull complete 
5bf98bf80c2f: Pull complete 
950c199aa45b: Pull complete 
92504897768b: Pull complete 
c6488f74dce8: Pull complete 
Digest: sha256:65be6503496c34ec234e89a831ca248b18c2e04c800d9d74af73866e3cda8578
Status: Downloaded newer image for registry:latest
docker.io/library/registry:latest
[root@sunrui ~]# docker run -d -p 5000:5000 --restart=always --name myregistry -v /opt/data/registry:/var/lib/registry registry
3cac187c798b08d12da5f292a03621e2e27021763481e9313b6f7de57a722354
[root@sunrui ~]# docker ps -a
CONTAINER ID     IMAGE        COMMAND                  CREATED             STATUS              PORTS                    NAMES
3cac187c798b     registry     "/entrypoint.sh /etc…"   29 seconds ago      Up 28 seconds       0.0.0.0:5000->5000/tcp   myregistry

# 验证刚建立的注册中心
[root@sunrui ~]# curl http://127.0.0.1:5000/v2/_catalog
{"repositories":[]}     # 此结果说明运行正常,注册中心还没有任何镜像

将镜像上传到自建的注册中心

#1.给已有的镜像打标签符合自建注册中心格式
[root@sunrui ~]# docker tag ubuntu 127.0.0.1:5000/ubuntu:v1
[root@sunrui ~]# docker images
REPOSITORY                                              TAG                 IMAGE ID            CREATED             SIZE
sunrui12138/ubuntu                                       22.03               93a86f5131ec        3 hours ago         72.8MB
127.0.0.1:5000/ubuntu                                   v1                  ba6acccedd29        5 months ago        72.8MB
ubuntu                                                  latest              ba6acccedd29        5 months ago        72.8MB
[root@sunrui ~]# docker tag sunrui12138/testdocker 127.0.0.1:5000/testdocker:v1

#2.执行镜像上传
[root@sunrui ~]# docker push 127.0.0.1:5000/ubuntu:v1
The push refers to repository [127.0.0.1:5000/ubuntu]
9f54eef41275: Pushed 
v1: digest: sha256:7cc0576c7c0ec2384de5cbf245f41567e922aab1b075f3e8ad565f508032df17 size: 529
[root@sunrui ~]# docker push  127.0.0.1:5000/testdocker:v1
The push refers to repository [127.0.0.1:5000/testdocker]
88dc11111fec: Pushed 
v1: digest: sha256:b1d135c19b018cfbbba32085948cb125507b508549a8296568c25a81f5b0709b size: 527

#3.执行测试
[root@sunrui ~]# curl http://127.0.0.1:5000/v2/_catalog
{"repositories":["testdocker","ubuntu"]}

从自建注册中心下载镜像

[root@sunrui ~]# docker rmi 127.0.0.1:5000/testdocker:v1
Untagged: 127.0.0.1:5000/testdocker:v1
Untagged: 127.0.0.1:5000/testdocker@sha256:b1d135c19b018cfbbba32085948cb125507b508549a8296568c25a81f5b0709b
[root@sunrui ~]# docker pull 127.0.0.1:5000/testdocker:v1
v1: Pulling from testdocker
Digest: sha256:b1d135c19b018cfbbba32085948cb125507b508549a8296568c25a81f5b0709b
Status: Downloaded newer image for 127.0.0.1:5000/testdocker:v1
127.0.0.1:5000/testdocker:v1
[root@sunrui ~]# docker images
REPOSITORY                                              TAG                 IMAGE ID            CREATED             SIZE
127.0.0.1:5000/testdocker                               v1                  a5dbf1d93254        3 hours ago         861kB

配置注册中心地址

本地服务器情况下使用127.0.0.1或者localhost作为注册中心地址都是可以的。
但如果使用主机的域名或IP地址提供服务,会报错,这是因为1.3版本后,docker注册中心默认使用的https,但是搭建私有注册中心默认使用的是http。

解决方法:修改docker客户端/etc/docker/daemon.json文件,将地址添加到insecure-registries列表中,允许不安全的通信即可。

# 示例
{
  "insecure-registries":["192.168.100.10:5000"]
}
# 保存后重启docker
systemctl restart docker
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

docker注册中心 的相关文章

随机推荐

  • Android NDK tombstone分析工具

    Android NDK tombstone分析工具 在Andoird Native库发生异常的时候 xff0c Linux会发生不同级别的sig xff0c 来结构相关进程的运行 xff0c 同时会产生tombstone trace文件用于
  • 关于UEFI

    最近在Thinkpad上安装Ubuntu12 04的时候 xff0c 经历了几个问题 xff0c 发现BOIS里多了很多选项 xff0c 而且安装双系统也有UEFI有关 xff0c 在网站上找了一篇文章 xff0c 发现这还是一个新概念 x
  • 怎样在github上协同开发

    描述 xff1a How to co work wither parter via github Github协同开发情景模拟 Github不仅有很多开源的项目可以参考 xff0c 同样也是协同开发的最佳工具 xff0c 接下来的就模拟一下
  • Android libdvm.so 与 libart.so

    Android libdvm so 与 libart so 系统升级到5 1之后 xff0c 发现system lib 下面没有libdvm so了 xff0c 只剩下了libart so 对于libart模式 xff0c 从4 4就在De
  • 链表快速排序quick-sort(递归+迭代)

    递归版 直接上代码 span class token keyword static span span class token keyword void span span class token function list qsort s
  • 反向代理--解决跨域问题

    为什么要解决跨域问题 xff1a 因为浏览器有限制 xff0c 只有同域名同端口号下的数据才能拿来用 xff1b 那如果想拿到不同域名不同端口号下的数据就不行了 xff1b 在单文件组件中如何去解决跨域问题 xff1a 因为服务器没有跨域限
  • 写在2011

    很早就想写点东西了 xff0c 可晃荡晃荡地就到了2011年最后一刻 我想是要写点东西了 2011年 xff0c 我有太多的感触 这一年是我第一次在异地迎接农历新年了 xff0c 对 xff0c 当时的感觉很刺激 xff0c 刺激得让我和当
  • Translate Aticle

    最近在Thinkpad上安装Ubuntu12 04的时候 xff0c 经历了几个问题 xff0c 发现BOIS里多了很多选项 xff0c 而且安装双系统也有UEFI有关 xff0c 在网站上找了一篇文章 xff0c 发现这还是一个新概念 x
  • Window64位系统用HSDIS对java代码进行反编译

    1 下载hsdis amd64 dll文件并放入 JAVA HOME jre bin中 xff0c 例如 xff1a C Program Files Java jdk1 8 0 191 jre bin 书上说的是放在 JAVA HOME j
  • golang中的context

    一 Context含义 1 context定义 context是golang中的上下文 goroutine的相关环境快照 xff0c 其中包含函数调用以及涉及的相关的变量值 golang通过Context机制解决一个request中多个go
  • Win10部署Authelia(OAuth2授权框架)

    一 安装docker 二 下载authelia代码 span class token comment 下载代码并切换到本地运行例子 span span class token function git span clone https gi
  • golang并发学习及实战记录

    一 切片append方法不是原子操作 多个协程操作同一个切片 xff0c 使用append方法添加元素时 xff0c 存在并发安全问题 xff0c 需要对append方法加锁 span class token keyword func sp
  • Jetson TX1/TX2搭载RTSO-9003载板刷机及使用JetPack3.3安装软件教程(防踩坑)

    1 烧录Linux系统 1 1 系统要求 最好给主机电脑安装Ubuntu14和Ubuntu16 x86 64系统 Ubuntu18系统不能运行JetPack3 3软件 xff0c 且JetPack3 3安装软件必须在主机Host x86 6
  • Ubuntu系统下ROS安装说明

    1 准备工作 安装前看看有什么更改Ubuntu默认的更新源 xff0c 如果更改了 xff0c 要换回备份的默认的安装源 xff08 etc apt sources list bak xff09 权限设置 用户需要成为 拨出 组的一部分 x
  • 腾讯云服务器上搭建Hadoop伪分布式教程

    1 登陆腾讯云服务器控制台查看内网ip地址 2 更改主机名 修改master ip地址 xff0c 地址改为内网地址 vi etc hosts 172 21 0 修改主机名 vi etc hostname master 重启服务器 rebo
  • 时间序列(二)数据重采样

    数据重采样 时间数据由一个频率转换到另一个频率 降采样 升采样 生成一条带随机值的时间序列 rng 61 pd date range span class hljs string 39 1 1 2011 39 span periods 61
  • linux lib/list_sort.c排序算法

    linux lib list sort c排序算法 没看懂 xff0c 留念一下 patch地址是https www mail archive com linux kernel 64 vger kernel org msg1957556 h
  • RealSenseD345I —— imu + camera标定

    目录 1 标定目的 2 标定准备 3 标定步骤 nbsp nbsp nbsp nbsp 1 IMU标定 nbsp nbsp nbsp
  • 深度学习分类算法系列之 -KNN

    先看一个实例来体会一下什么叫做KNN 已知一堆数据a和一堆数据0 xff0c 然后有一个未知数据c xff0c 要判断c到底属于a还是0 如果是1NN 就找到离C最近的数据 xff0c 离哪一个最近 xff0c 就判断c属于哪一类 如果利用
  • docker注册中心

    docker hub镜像上传 span class token comment 1 修改镜像镜像加速器 span span class token punctuation span root 64 sunrui span class tok