4.13docker仓库registry

核心概念:Registry 到底是什么?

基本概念拆解

模块 核心含义
是什么? Registry(仓库 / 注册表)是集中存储、管理、分发 Docker 镜像的服务,相当于镜像的「云端仓库 / 图书馆」,是 Docker 生态的核心基础设施之一。
为什么需要? 解决「镜像怎么共享、怎么统一管理、怎么在多服务器 / 团队间同步」的问题:・没有仓库:只能用 U 盘 / 文件拷贝镜像,效率极低、版本混乱・有了仓库:一键 pull/push 实现镜像分发,支持权限管控、版本管理
能干什么? 存储镜像、拉取 / 推送镜像、权限控制、版本管理、镜像加速、漏洞扫描等,是容器化部署的必备环节。

常见仓库分类

1docker hub

网址:https://hub.docker.com

Docker 官方公共仓库,全球最大的镜像源,免费提供公共仓库,付费提供私有仓库,生态最全。

缺点:国内打不开

2阿里云镜像仓库

https://cr.console.aliyun.com/cn-hongkong/instances

3nexus

Nexus(全称 Sonatype Nexus Repository Manager),是目前企业里最主流的私有制品仓库管理工具,简单说就是你的「代码 / 软件包 / 镜像的集中管理中心」。

它到底能干嘛?

    1. 私有托管(Hosted)用来存你自己开发的包,比如公司内部的 Java Jar、Docker 镜像、npm 包等,团队可以统一拉取,避免泄露到公网。你之前的 docker-snapshot 仓库,就是典型的 Hosted 类型,专门用来推自己的镜像。
    1. 代理缓存(Proxy)作为公网仓库的 "代理",比如代理 Docker Hub、Maven 中央仓库。团队成员拉包时,先从 Nexus 缓存里拿,不用每次都去外网下载,速度更快、也不怕公网仓库挂掉。你之前的 docker-central 仓库,就是用来代理 Docker Hub 的。
    1. 聚合仓库(Group)把多个仓库(私有 + 代理)整合到一个统一地址,比如 docker-public,团队只需要配置这一个地址,就能同时拉私有镜像和公网镜像,不用来回切换配置。

一、启动 Nexus 容器的完整命令

bash 复制代码
创建挂载卷
mkdir -p /opt/docker/nexus
chmod 777 -R /opt/docker/nexus

docker run -d --restart=always -p 8868:8081 -p 5000:5000 -p 5001:5001 --name nexus -v /opt/docker/nexus:/nexus-data sonatype/nexus3
  • 8868 → 网页管理
  • 5000 → 私有仓库,能推能拉(hosted)
  • 5001 → 公共仓库,只能拉不能推(group)

二、查看初始 admin 密码

复制代码
cat /opt/docker/nexus/admin.password

三、Docker 配置私有仓库(daemon.json)

bash 复制代码
 cat > /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": ["https://7ntm6v2h.mirror.aliyuncs.com"],
  "insecure-registries": ["172.25.57.168:5000","172.25.57.168:5001"]
}
EOF

systemctl daemon-reload
systemctl restart docker

四、登录管理网站创建仓库

登录 Nexus 私有仓库(5000 是可推送端口)

复制代码
docker login -uadmin 172.25.57.168:5000

五、给镜像打标签并推送到 Nexus

复制代码
docker tag nginx 172.25.57.168:5000/nginx_nexus:1.0

docker push 172.25.57.168:5000/nginx_nexus:1.0

六、从 Nexus 拉取镜像

复制代码
docker pull 172.25.57.168:5000/nginx_nexus:1.0

Harbor仓库

...

相关推荐
写后端的胖头鱼2 分钟前
一文讲懂JVM与调优
jvm·后端·算法·架构·jvm调优
服务端相声演员7 分钟前
MySQL的select distinct ..Union all和select..union的区别
数据库·mysql
2501_930472447 分钟前
深度复盘|数据库迁移实战(下):从自建 MySQL 5.7 到腾讯云 MySQL 8.0 的 SQL 兼容改造
数据库·mysql·腾讯云
土司大王9 分钟前
LeetCode 79 单词搜索:Java 回溯模板、网格 DFS 与剪枝优化
java·算法·leetcode·深度优先
ECT-OS-JiuHuaShan14 分钟前
哲学是迭代学,数学是拓扑学
开发语言·人工智能·学习·算法·机器学习·php·拓扑学
leo_messi9414 分钟前
Mysql学习(十二) -- SQL执行到底做了什么事?
sql·学习·mysql
All for pursuit.17 分钟前
【数组-5】560.和为K的子数组
数据结构·c++·算法·leetcode
Beyond_System|系统之外44 分钟前
【学编程】Python基础编程题100道(1-20)
java·数据结构·算法
维克兜率天1 小时前
【维克】一个极端值,毁掉了整个因子
大数据·人工智能·python·算法·机器学习
船厂电气自动化ai大模型1 小时前
AI大模型与数学 第75课 基、维度、向量空间坐标
数据结构·线性代数·算法·机器学习·推荐算法