08 docker Registry搭建docker私仓

目录

@ 本地镜像发布流程

1. docker pull registry 下载镜像

2. docker run 运行私有库registry

3. docker commit 构建镜像

4. docker tag 修改新镜像,使之符合私服规范tag

5. 修改配置文件使之支持http

6. curl验证私服库上有什么镜像

7. push推送 pull拉取 run验证


@ 本地镜像发布流程

1. docker pull registry 下载镜像

Docker Registry是官方提供的工具,可以用于构建私有镜像仓库

2. docker run 运行私有库registry

[root@rockylinux docker_registry]# pwd
/root/docker_registry
[root@rockylinux docker_registry]# docker run -d -p 5000:5000 -v /root/docker_registry/:/tmp/registry --privileged=true registry

默认情况,仓库被创建在容器的/var/lib/registry目录下,建议自行用容器卷映射,方便于宿主机联调(调试和开发)

3. docker commit 构建镜像

[root@rockylinux ~]# docker run -it --name ifconfigubuntu ubuntu /bin/bash
root@6d6fe54d8a52:/# ifconfig
bash: ifconfig: command not found
root@6d6fe54d8a52:/# apt-get update
root@6d6fe54d8a52:/# apt-get install -y net-tools
root@6d6fe54d8a52:/# which ifconfig
/usr/sbin/ifconfig
----------------------------------------------------------------------------------------
[root@rockylinux ~]# docker commit -m="this add ifconfig" -a="fujiang" 6d6fe54d8a52 ifconfigubuntu:1.2
sha256:c14a3d7cdae651f3dbcd580c155ec08e87a3a062e677ebd10b51772377074eb5
[root@rockylinux ~]# docker images
REPOSITORY                        TAG       IMAGE ID       CREATED          SIZE
ifconfigubuntu                    1.2       c14a3d7cdae6   10 seconds ago   126MB
registry                          latest    b8604a3fe854   2 years ago      26.2MB
ubuntu                            latest    ba6acccedd29   2 years ago      72.8MB
[root@rockylinux ~]# docker run -it ifconfigubuntu:1.2
root@dd818118ec9c:/# which ifconfig
/usr/sbin/ifconfig

4. docker tag 修改新镜像,使之符合私服规范tag

公式:docker tag 镜像:Tag Host:Port/Repository:Tag

[root@rockylinux ~]# docker tag ifconfigubuntu:1.2 172.16.12.51:5000/ifconfigubuntu:1.2[root@rockylinux ~]# docker images
REPOSITORY                                                         TAG       IMAGE ID       CREATED          SIZE
ifconfigubuntu                                                     1.2       c14a3d7cdae6   36 minutes ago   126MB
172.16.12.51:5000/ifconfigubuntu                                   1.2       c14a3d7cdae6   36 minutes ago   126MB

5. 修改配置文件使之支持http

[root@rockylinux ~]# vim /etc/docker/daemon.json
{"registry-mirrors": ["https://3ozi8ijo.mirror.aliyuncs.com"],"insecure-registries": ["172.16.12.51:5000"]
}
systemctl daemon-reload
systemctl restart docker

注意:为json格式 , 不要遗漏

6. curl验证私服库上有什么镜像

[root@rockylinux ~]#  curl -X GET http://172.16.12.51:5000/v2/_catalog
{"repositories":[]} 
#初始为空

HTTP API V2 :HTTP API V2 | Docker Documentation
这个命令用于通过 curl 工具向 Docker Registry 发送一个 HTTP GET 请求,以获取镜像仓库(repository)列表。具体来说,它访问的是 Docker Registry API 的 _catalog 端点,该端点会返回一个 JSON 对象,列出所有在该 Registry 中存在的镜像仓库。
curl -XGET http://192.168.111.162:5000/v2/_catalog

  • -X参数用于指定 HTTP 请求方法,这里是GET方法。实际上,对于GET请求来说,-XGET可以省略,因为GETcurl的默认方法。
  • 例如,curl http://192.168.111.162:5000/v2/_catalogcurl -XGET http://192.168.111.162:5000/v2/_catalog效果是相同的。
    • http:使用 HTTP 协议。
    • 192.168.111.162:目标服务器的 IP 地址。
    • 5000:目标服务器上运行 Docker Registry 服务的端口。
    • /v2/_catalog:Docker Registry API 的_catalog端点,用于获取镜像仓库的列表。 返回示例, 假设您在本地 Registry 中有两个镜像仓库ubuntunginx,响应可能会是这样的:

7. push推送 pull拉取 run验证

[root@rockylinux ~]# docker push 172.16.12.51:5000/ifconfigubuntu:1.2[root@rockylinux ~]#  curl -XGET http://172.16.12.51:5000/v2/_catalog
{"repositories":["ifconfigubuntu"]}[root@rockylinux ~]# docker pull 172.16.12.51:5000/ifconfigubuntu:1.2docker run 验证

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/39006.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Activity、Window、DecorView的关系

目录 一、Activity、Window、DecorView的层级关系如下图所示: 1、Activity 2、Window 3、DecorView 二、DecorView初始化相关源码 三、DecorView显示时机 前言: 不同的Android版本有差异,以下基于Android 11进行讲解。 一、Activi…

Halide AOT模式

这种模式会提前,会提前编译好,变成dll什么的,可接受任何输入的参数运行。 然后这样调用,必须要make一下前一个file,才有后面的.h

魔行观察-AI数据分析-蜜雪冰城

摘要 本报告旨在评估蜜雪冰城品牌作为投资对象的潜力和价值,基于其经营模式、门店分布、人均消费、覆盖省份等关键指标进行分析。 数据数据源:魔行观察:http://www.wmomo.com/#/brand/brandDetails?code10013603 品牌概览 蜜雪冰城是中国…

Vue 爬坑

都是基于最新的Vue3版本 "vue": "^3.4.29" 1 vue组建样式设置 <script setup lang"ts"> import HelloWorld from ./components/HelloWorld.vue </script><template><div><a href"https://vitejs.dev" tar…

RPA 第一课

RPA 是 Robotic Process Automation 的简称&#xff0c;意思是「机器人流程自动化」。 顾名思义&#xff0c;它是一种以机器人&#xff08;软件&#xff09;来替代人&#xff0c;实现重复工作自动化的工具。 首先要说一句&#xff0c;RPA 不是 ChatGPT 出来之后的产物&#x…

elementui中@click短时间内多次触发,@click重复点击,做不允许重复点击处理

click快速点击&#xff0c;发生多次触发 2.代码示例&#xff1a; //html<el-button :loading"submitLoading" type"primary" click"submitForm">确 定</el-button>data() {return {submitLoading:false,}}//方法/** 提交按钮 */sub…

分布式锁——基于Redis分布式锁

单机锁 服务器只有一个&#xff0c;JVM只有一个。 用synchronized加锁&#xff0c;对lock对象加锁&#xff0c;只有线程1结束&#xff0c;线程2,3才会开始。 再用uid避免一个线程多次进来。 分布式锁 真正上线时&#xff1a; 【注&#xff1a;这些服务器连接的是一个Redis集…

STM32入门笔记(03): ADC(SPL库函数版)(2)

A/D转换的常用技术有逐次逼近式、双积分式、并行式和跟踪比较式等。目前用的较多的是前3种。 A/D转换器的主要技术指标 转换时间 分辨率 例如&#xff0c;8位A/D转换器的数字输出量的变化范围为0&#xff5e;255&#xff0c;当输入电压的满刻度为5V时&#xff0c;数字量每变化…

如何学好自动化测试

1. 什么是自动化测试 自动化测试是使用脚本和工具来执行测试任务&#xff0c;以替代手工测试过程。它可以提高效率、减少人工错误&#xff0c;并增加测试覆盖率。在软件开发过程中&#xff0c;自动化测试已经成为了不可或缺的一部分。 自动化测试主要有以下好处&#xff1a; …

Amos结构方程模型---探索性分析

初级 第5讲 探索性分析_哔哩哔哩_bilibili amos中基本操作&#xff1a; 椭圆潜变量&#xff0c;不可预测 数据导入 改变形状 判定系数 方差估计和假设检验&#xff1a; 探索性分析&#xff1a; ses&#xff08;潜变量&#xff09;社会经济指数 从考虑最大的MI开始&#xff0c;卡…

【Python画图-驯化seaborn】一文搞懂seaborn中的箱线图实践技巧

【Python画图-驯化seaborn】一文搞懂seaborn中的箱线图实践技巧 本次修炼方法请往下查看 &#x1f308; 欢迎莅临我的个人主页 &#x1f448;这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合&#xff0c;智慧小天地&#xff01; &#x1f387; 免费获取相关内容文档关注&a…

1.4 ROS2集成开发环境搭建

1.4.1 安装VSCode VSCode全称Visual Studio Code&#xff0c;是微软推出的一款轻量级代码编辑器&#xff0c;免费、开源而且功能强大。它支持几乎所有主流的程序语言的语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比Diff、GIT 等特性&#xff0c;支持插件…

7.3数据库第一次作业

安装MySQL 1.打开安装包 2.选择自定义安装&#xff08;custom&#xff09;并点击下一步 3.自定义安装路径 4.点击执行 5.执行成功 6.默认选项点击下一步 7.选择新的授权方式并点击下一步 8.配置密码 9.默认配置并点击下一步 10.点击执行&#xff08;Execute&#xff09; 11.执…

python中的文件

1.什么是文件&#xff1f; 硬盘上存储的数据都是以文件的形式来组织的~ 文件是数据在硬盘上的存储形式&#xff0c;不同的数据在硬盘上的存储形式是不同的&#xff0c; 2.文件路径 文件夹/目录。 文件夹&#xff0c;再包含文件夹的情况&#xff0c;这就是一个嵌套的关系&…

2024-2025年本田维修电路图线路图接线图资料更新

此次更新了2024-2025年本田车系电路图资料&#xff0c;覆盖市面上99%车型&#xff0c;包括维修手册、电路图、新车特征、车身钣金维修数据、全车拆装、扭力、发动机大修、发动机正时、保养、电路图、针脚定义、模块传感器、保险丝盒图解对照表位置等等&#xff01; 汽修帮手汽…

Java中使用arima预测未来数据

看着已经存在的曲线图数据&#xff0c;想预估下后面曲线图的数据。 import java.util.Vector;public class AR {double[] stdoriginalData{};int p;ARMAMath armamathnew ARMAMath();/*** AR模型* param stdoriginalData* param p //p为MA模型阶数*/public AR(double [] stdori…

你的硬盘知道的太多:你以为你的秘密真的被删除了吗?

某一天你收到了朋友发给你的一个秘密文件&#xff0c;在看完之后&#xff0c;为了不被别人发现&#xff0c;你决定将文件毁尸灭迹&#xff01; 你选中文件名称 / 右键 / 删除&#xff0c;好了&#xff0c;文件已经消失了。但你是懂电脑的&#xff0c;知道文件此时还在回收站里面…

海外虚拟卡开卡平台有哪些?无限开卡,无其他限制

随着时代的发展很多小伙伴都需要海外虚拟卡&#xff0c;海外虚拟卡开卡平台我这里用的是Fomepay的&#xff0c;他们比较人性化&#xff0c;有客服&#xff0c;随时可咨询 对于消费者而言&#xff0c;虚拟卡号提供了隐私&#xff0c;因此广告商更难以跟踪和定位购买行为&#x…

《python程序语言设计》2018版第5章第50题利用turtle编程显示三角形图案

2024.06.18 05.50.01version 首先我觉得还是应该现从简单阵列来进行。非常简单。顺便回忆一下我3月份做的5.19题里那些淘气的数列 代码成功 #将i从10设计成12打印的毕竟好看 for i in range(1,12):#这这里给结尾的i2效果并不好看for j in range(1,i):print(j,end" "…

【深度学习】Transformer

李宏毅深度学习笔记 https://blog.csdn.net/Tink1995/article/details/105080033 https://blog.csdn.net/leonardotu/article/details/135726696 https://blog.csdn.net/u012856866/article/details/129790077 Transformer 是一个基于自注意力的序列到序列模型&#xff0c;与基…