docker简单私有仓库的搭建

2024-08-31 07:12

本文主要是介绍docker简单私有仓库的搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

示例: 【搭建简单的Registry仓库】

1. 下载 Registry 镜像 
[root@docker ~]# docker pull registry
#可以查看开放的端口,需要把端口暴露出来
[root@docker ~]# docker history registry:latest 
[root@docker ~]# docker run -d -p 5000:5000 --restart=always registry
9f389c98fbd2163fb6487a5bfd2358751eb4ecb07eb47f463ae76f12b117361c
[root@docker ~]# docker ps
CONTAINER ID   IMAGE      COMMAND                  CREATED          STATUS          PORTS                                       NAMES
9f389c98fbd2   registry   "/entrypoint.sh /etc…"   14 seconds ago   Up 12 seconds   0.0.0.0:5000->5000/tcp, :::5000->5000/tcp   hardcore_saha
#推送push   #把当前镜像 nginx:v2 推送到 5000 端口
[root@docker ~]# docker tag nginx:v2 172.25.254.5:5000/nginx.v3
[root@docker ~]# docker push 172.25.254.5:5000/nginx.v3
Using default tag: latest
The push refers to repository [172.25.254.5:5000/nginx.v3]
Get "https://172.25.254.5:5000/v2/": http: server gave HTTP response to HTTPS client
## 默认用 https 的方式:得做认证
[root@docker ~]# 
#也可以不用https,而用http的方式,必须得配置非加密端口信息。/etc/docker/daemon.json
[root@docker ~]# vim /etc/docker/daemon.json 
[root@docker ~]# cat /etc/docker/daemon.json 
{
  "insecure-registries" : ["http://172.25.254.5:5000"]
}
[root@docker ~]# systemctl restart docker
[root@docker ~]# docker push 172.25.254.5:5000/nginx.v3
Using default tag: latest
The push refers to repository [172.25.254.5:5000/nginx.v3]
54a2c5fcea1c: Pushed 
a8df99e45168: Pushed 
174f56854903: Pushed 
latest: digest: sha256:2d45824da0f28c4087c7a2c009cc4dba14efc637fdd8bef91fd49a1dcbda8b8c size: 947
## 推上去的数据在哪?
[root@docker ~]# docker ps
CONTAINER ID   IMAGE      COMMAND                  CREATED          STATUS         PORTS                                       NAMES
9f389c98fbd2   registry   "/entrypoint.sh /etc…"   13 minutes ago   Up 4 minutes   0.0.0.0:5000->5000/tcp, :::5000->5000/tcp   hardcore_saha
[root@docker ~]# docker inspect hardcore_saha 
真机中位于:
# 最终数据位于容器的:
# 进去真机中的路径下看看,有 nginx:v3
[root@docker ~]# cd /var/lib/docker/volumes/fbc4139d10af9999ee19f7856fb7b5d187337af25eb9c927ef0e99eff304f0f0/_data
[root@docker _data]# ls
docker
[root@docker _data]# cd docker/
[root@docker docker]# cd registry/
[root@docker registry]# ls
v2
[root@docker registry]# cd v2/
[root@docker v2]# ls
blobs  repositories
[root@docker v2]# cd repositories/
[root@docker repositories]# l
bash: l: command not found...
[root@docker repositories]# ls
nginx.v3
[root@docker ~]# curl 172.25.254.5:5000/v2/_catalog
{"repositories":["nginx.v3"]}
# 再推一个试试:
[root@docker ~]# docker tag busybox:latest 172.25.254.5:5000/busybox:xixi
[root@docker ~]# docker push 172.25.254.5:5000/busybox:xixi 
The push refers to repository [172.25.254.5:5000/busybox]
d51af96cf93e: Pushed 
xixi: digest: sha256:28e01ab32c9dbcbaae96cf0d5b472f22e231d9e603811857b295e61197e40a9b size: 527

 

这篇关于docker简单私有仓库的搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1123231

相关文章

redis群集简单部署过程

《redis群集简单部署过程》文章介绍了Redis,一个高性能的键值存储系统,其支持多种数据结构和命令,它还讨论了Redis的服务器端架构、数据存储和获取、协议和命令、高可用性方案、缓存机制以及监控和... 目录Redis介绍1. 基本概念2. 服务器端3. 存储和获取数据4. 协议和命令5. 高可用性6.

docker如何删除悬空镜像

《docker如何删除悬空镜像》文章介绍了如何使用Docker命令删除悬空镜像,以提高服务器空间利用率,通过使用dockerimage命令结合filter和awk工具,可以过滤出没有Tag的镜像,并将... 目录docChina编程ker删除悬空镜像前言悬空镜像docker官方提供的方式自定义方式总结docker

JAVA调用Deepseek的api完成基本对话简单代码示例

《JAVA调用Deepseek的api完成基本对话简单代码示例》:本文主要介绍JAVA调用Deepseek的api完成基本对话的相关资料,文中详细讲解了如何获取DeepSeekAPI密钥、添加H... 获取API密钥首先,从DeepSeek平台获取API密钥,用于身份验证。添加HTTP客户端依赖使用Jav

本地搭建DeepSeek-R1、WebUI的完整过程及访问

《本地搭建DeepSeek-R1、WebUI的完整过程及访问》:本文主要介绍本地搭建DeepSeek-R1、WebUI的完整过程及访问的相关资料,DeepSeek-R1是一个开源的人工智能平台,主... 目录背景       搭建准备基础概念搭建过程访问对话测试总结背景       最近几年,人工智能技术

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

利用Python编写一个简单的聊天机器人

《利用Python编写一个简单的聊天机器人》这篇文章主要为大家详细介绍了如何利用Python编写一个简单的聊天机器人,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 使用 python 编写一个简单的聊天机器人可以从最基础的逻辑开始,然后逐步加入更复杂的功能。这里我们将先实现一个简单的

使用IntelliJ IDEA创建简单的Java Web项目完整步骤

《使用IntelliJIDEA创建简单的JavaWeb项目完整步骤》:本文主要介绍如何使用IntelliJIDEA创建一个简单的JavaWeb项目,实现登录、注册和查看用户列表功能,使用Se... 目录前置准备项目功能实现步骤1. 创建项目2. 配置 Tomcat3. 项目文件结构4. 创建数据库和表5.

使用PyQt5编写一个简单的取色器

《使用PyQt5编写一个简单的取色器》:本文主要介绍PyQt5搭建的一个取色器,一共写了两款应用,一款使用快捷键捕获鼠标附近图像的RGB和16进制颜色编码,一款跟随鼠标刷新图像的RGB和16... 目录取色器1取色器2PyQt5搭建的一个取色器,一共写了两款应用,一款使用快捷键捕获鼠标附近图像的RGB和16

四种简单方法 轻松进入电脑主板 BIOS 或 UEFI 固件设置

《四种简单方法轻松进入电脑主板BIOS或UEFI固件设置》设置BIOS/UEFI是计算机维护和管理中的一项重要任务,它允许用户配置计算机的启动选项、硬件设置和其他关键参数,该怎么进入呢?下面... 随着计算机技术的发展,大多数主流 PC 和笔记本已经从传统 BIOS 转向了 UEFI 固件。很多时候,我们也

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要