搭建Docker私有镜像仓库

news/2024/5/19 17:36:29

        大家好,今天给大家分享一下如何搭建私有镜像仓库,私有镜像仓库可以更好地管理和控制镜像的访问和使用,确保只有授权的人员能够获取和使用特定的镜像,而且方便团队内部共享定制化的镜像,提高开发和部署效率,不需要每次都从外部获取镜像,减少网络延迟和不稳定因素的影响,还能够对镜像进行版本控制,方便回滚和追踪,有利于资源整合,将常用的镜像集中存储和管理,便于资源的统一调配和利用。

一、配置Docker信任地址

修改Docker守护进程配置文件:

vi /etc/docker/daemon.json

通过vi打开文件后,添加文件内容如下:

 {"insecure-registries":["http://你的ip地址:8090"]}

修改完成后,保存退出 。

重新加载Docker守护进程配置并重启Docker。

systemctl daemon-reload
systemctl restart docker

二、下载安装简化版的镜像仓库

下载registry镜像 

docker pull registry

等待下载完成... 

下载完成后,启动registry容器。

mkdir /opt/registry-ui/registry-data # 创建存放registry数据的目录docker run -d \--restart=always \--name registry \-p 5000:5000 \-v /opt/registry-ui/registry-data:/var/lib/registry \registry

这条命令的解释:

-d:以守护进程模式运行容器。

--restart=always:容器在退出后总是自动重启。

--name registry:为容器指定名称为 registry。

-p 5000:5000:将主机的 5000 端口映射到容器的 5000 端口。

-v /opt/registry-ui/registry-data:/var/lib/registry:将主机的 /opt/registry-ui/registry-data 目录挂载到容器的 /var/lib/registry 目录。

registry:指定要运行的容器镜像为 registry。

查看容器运行状态。

容器启动成功。

三、下载安装docker-registry-ui

docker run -p 8090:80 --name registry-ui \
--restart=always \
-e REGISTRY_URL="http://你的ip地址:5000" \
-e DELETE_IMAGES="true" \
-e REGISTRY_TITLE="这是一个私有仓库" \
-e CATALOG_ELEMENTS_LIMIT="1000" \
-d joxit/docker-registry-ui:static

在这条命令的解释:

-p 8090:80:将主机的 8090 端口映射到容器的 80 端口。

--name registry-ui:给容器命名为 registry-ui。

--restart=always:表示容器总是自动重启。

-e REGISTRY_URL="http://你的 ip 地址:5000":设置环境变量 REGISTRY_URL 的值。

-e DELETE_IMAGES="true":设置环境变量 DELETE_IMAGES 为 true。

-e REGISTRY_TITLE="这是一个私有仓库":设置环境变量 REGISTRY_TITLE 的值。

-e CATALOG_ELEMENTS_LIMIT="1000":设置环境变量 CATALOG_ELEMENTS_LIMIT 的值。

d:表示以守护进程模式运行容器。

joxit/docker-registry-ui:static:指定要运行的容器镜像。

自动下载并且启动容器完成后,查看容器的运行状态。

此时,访问 http://你的ip地址:8090 即可访问私有镜像仓库页面。

四、设置Docker启动时启动

docker update registry --restart=always
docker update registry-ui --restart=always

五、推送镜像到私有仓库

把本地的镜像 nginx,重新tag为 nginx:1.0。

docker tag nginx:latest 你的ip地址:8090/nginx:1.0

把它推送到私有仓库

docker push 你的ip地址:8090/nginx:1.0

推送成功后,可以在仓库中查看到。 

六、拉取私有仓库镜像

docker pull 你的ip地址:8080/nginx:1.0

 


http://www.mrgr.cn/p/67574310

相关文章

软件应用开发安全设计指南

1.1 应用系统架构安全设计要求 设计时要充分考虑到系统架构的稳固性、可维护性和可扩展性,以确保系统在面对各种安全威胁时能够稳定运行。 在设计系统架构时,要充分考虑各种安全威胁,如DDoS攻击、SQL注入、跨站脚本攻击(XSS&…

【Unity】如何获得TMP Button下的text内容

【背景】 unity项目中使用了TMP命名空间的Button UI组件。脚本中需要获得Button下Text的内容,但是发现用TextMeshPro仍然无法获得button下的text对象。 【分析】 Hierarchy结构上看明确Button下是有Text组件的: 括号里是TMP,所以理论上用TextMeshPro类型去FindComponent…

JMeter - 如何测试REST API / 微服务

概述: 有许多方法和工具可用于测试REST API。 当我需要测试REST API时,在查看了各种工具和选项之后,由于以下原因,我选择了JMeter。 JMeter是免费和开源的。 JMeter可以从CSV文件中直接读取您的测试数据。参数化非常简单。 可以…

新手向导:选用Axure还是墨刀?

Axure和墨刀是设计师和产品经理在创建交互式原型时经常使用的工具。在初学者使用这两个工具之前,他们需要考虑每个工具的优缺点,以便选择合适的工具。以下是Axure和墨刀的比较以及哪个适合初学者的解释。 Axure与墨刀的对比 Axure是一种强大的交互式原…

Pytorch基础:内置类type的用法

相关阅读 Pythonhttps://blog.csdn.net/weixin_45791458/category_12403403.html?spm1001.2014.3001.5482 在python中,一切数据类型都是对象(即类的实例),包括整数、浮点数、字符串、列表、元组、集合、字典、复数、布尔、函数、…

Luminar Neo 1.19.0 (macOS Universal) - 创新 AI 图像编辑器

Luminar Neo 1.19.0 (macOS Universal) - 创新 AI 图像编辑器Luminar Neo 1.19.0 (macOS Universal) - 创新 AI 图像编辑器 利用尖端的人工智能生成技术,轻松增强照片效果 请访问原文链接:Luminar Neo 1.19.0 (macOS Universal) - 创新 AI 图像编辑器,查看最新版。原创作品,…

Burp Suite Professional 2024.4 for Windows x64 - 领先的 Web 渗透测试软件

Burp Suite Professional 2024.4 for Windows x64 - 领先的 Web 渗透测试软件Burp Suite Professional 2024.4 for Windows x64 - 领先的 Web 渗透测试软件 世界排名第一的 Web 渗透测试工具包 请访问原文链接:Burp Suite Professional 2024.4 for Windows x64 - 领先的 Web 渗…

Burp Suite Professional 2024.4 for macOS x64 ARM64 - 领先的 Web 渗透测试软件

Burp Suite Professional 2024.4 for macOS x64 & ARM64 - 领先的 Web 渗透测试软件Burp Suite Professional 2024.4 for macOS x64 & ARM64 - 领先的 Web 渗透测试软件 世界排名第一的 Web 渗透测试工具包 请访问原文链接:Burp Suite Professional 2024.4 for macOS …

为什么会查询不到DNS信息?怎么排查?

DNS(域名系统)是将域名转换为相应 IP 地址的关键系统。查询 DNS 信息具有重要作用,通过查询 DNS 信息,我们可以知道域名对应的 IP 地址,这是最主要的信息,使设备能与目标服务器进行通信;其次是域名的相关记录,如 MX 记录(邮件交换记录)等,了解与邮件服务相关的信息;…

v-for中的key是什么作用

在使用v-for进行列表渲染时,我们通常会给元素或者组件绑定一个key属性。 这个key属性有什么作用呢?我们先来看一下官方的解释: key属性主要用在Vue的虚拟DOM算法,在新Inodes对比时辨识VNodes; 如果不使用key,Vue会使用…

【动画进阶】巧用 CSS/SVG 实现复杂线条光效动画

最近,群里在讨论一个很有意思的线条动画效果,效果大致如下:简单而言,就是线条沿着不规则路径的行进动画,其中的线条动画可以理解为是特殊的光效。 本文,我们将一起探索,看看在不使用 JavaScript/Canvas 的基础上,使用纯 CSS/SVG 的方式,我们可以如何大致的还原上述的线…

mysql查询语句数组下标截取

#["广东省","汕头市","龙湖区"]SELECT a.`register_address` AS 工商地址,a.`dismantle_address`, REPLACE (dismantle_address->$[0],",) AS 省,REPLACE (dismantle_address->$[1],",) AS 市,REPLACE (dismantle_address->$…

IR-CUT驱动电路

本文介绍IR-CUT驱动电路。 IR-CUT Filter是很多相机镜头配置的滤光片,通过相应的驱动电路(可以简单理解为驱动一个电磁铁),可以在有无IR-CUT Filter之间进行切换,本文基于TI电机驱动芯片DRV8838设计IR-CUT驱动电路。 …

[每日AI·0506]巴菲特谈 AI,李飞飞创业,苹果或将推出 AI 功能,ChatGPT 版搜索引擎

AI 资讯 苹果或将推出 AI 功能,随 iPhone 发布2024 年巴菲特股东大会,巴菲特将 AI 类比为核技术 巴菲特股东大会 5 万字实录消息称 OpenAI 将于 5 月 9 日发布 ChatGPT 版搜索引擎路透社消息,斯坦福大学 AI 领军人物李飞飞打造“空间智能”创…

open-webui+ollama本地部署Llama3

前言 Meta Llama 3 是由 Meta 公司发布的下一代大型语言模型,拥有 80 亿和 700 亿参数两种版本,号称是最强大的开源语言模型。它在多个基准测试中超越了谷歌的 Gemma 7B 和 Mistral 7B Instruct 模型。 安装 1.gpt4all https://github.com/nomic-ai/…

自学IT成为许多人提升自我

在数字化时代浪潮中,自学IT成为许多人提升自我、拥抱未来的重要途径。通过网络平台、在线课程、开源项目等丰富资源,学习者能灵活安排时间,深入掌握编程语言、软件开发、数据分析、人工智能等多个领域知识。自学不仅培养了解决问题的能力&…

JavaScript 流程控制语句详解:if语句、switch语句、while循环、for循环等

JavaScript,作为一种广泛使用的编程语言,它的流程控制语句是构建逻辑和实现功能的基础。流程控制语句包括条件语句、循环语句和转向语句,它们是编程中不可或缺的部分。 接下来,我们将一一解析这些语句,带你走进JavaScript的世界。 一、什么是流程控制语句 流程控制语句是用…

AI大模型探索之路-训练篇16:大语言模型预训练-微调技术之LoRA

系列篇章💥 AI大模型探索之路-训练篇1:大语言模型微调基础认知 AI大模型探索之路-训练篇2:大语言模型预训练基础认知 AI大模型探索之路-训练篇3:大语言模型全景解读 AI大模型探索之路-训练篇4:大语言模型训练数据集概…

PMP培训一般要多久?

考过PMP很久了,学习时长还是记得很清楚的。因为有一部分的项目经验,报了威班PMP的培训,看了宣传是50天通过PMP,但是我仅仅用了一个月出头就搞定了,算下来才四十天不到就已经学完在准备冲刺参加考试了,最后5…

锅炉轴承界的“耐热冠军”:江苏鲁岳耐高温300度自润滑轴承!

耐高温300度锅炉轴承,江苏鲁岳自润滑技术领先行业!300度高温轻松应对,江苏鲁岳锅炉轴承自润滑技术引领潮流!耐磨耐温套-钢厂托辊用无油自润滑钢套-江苏鲁岳耐高温轴承。 在工业生产的大潮中,高温环境始终如一地考验着设…