使用 Nexus 代理 Docker Hub 的配置指南

devtools/2024/10/8 22:05:12/

在本篇文章中,我们将详细介绍如何配置 Nexus 以代理 Docker Hub,从而实现更高效的镜像管理。以下步骤涵盖了从 Nexus 的安装到 Docker 客户端的配置。

1. 配置 Nexus

1.1 登录 Nexus

  1. 打开浏览器,访问 Nexus 的 URL(例如 http://localhost:8081)。
  2. 输入管理员账户和密码(默认是 admin / admin123,首次登录后需修改)。

1.2 创建 Docker 代理仓库

  1. 在 Nexus 主界面,点击左侧菜单中的 Repositories
  2. 点击右上角的 Create repository 按钮。
  3. 选择 docker (proxy) 类型。
  4. 在弹出的配置页面,填写以下信息:
    • Name: 输入仓库名称(如 docker-proxy)。
    • Remote storage: 输入 Docker Hub 的 URL,通常为 https://registry-1.docker.io
    • HTTP Port: 输入要监听的端口(默认是 8081,可根据需要更改)。
    • Blob store: 默认选择即可。
  5. 点击 Create repository 完成创建。

1.3 创建 Docker Hosted 仓库(可选)

如果您需要将镜像推送到 Nexus,请创建一个 hosted 仓库:

  1. Create repository 窗口,选择 docker (hosted) 类型。
  2. 输入名称(如 docker-hosted),并设置 HTTP 端口(可与代理仓库相同)。
  3. 点击 Create repository 完成创建。

2. 配置 Docker 客户端(在 NAS 上)

2.1 修改 Docker Daemon 配置

  1. 通过 SSH 登录到您的 NAS。

  2. 使用文本编辑器(如 vimnano)打开 Docker 配置文件:

    sudo vim /etc/docker/daemon.json
    

    如果文件不存在,可以创建它。

  3. 添加以下内容,替换 nexus_ipport 为您的 Nexus 实际 IP 地址和端口(如 192.168.1.100:8081):

    {"insecure-registries": ["nexus_ip:port"]
    }
    
  4. 保存文件并退出编辑器。

2.2 重启 Docker 服务

运行以下命令以使配置生效:

sudo systemctl restart docker

3. 测试配置

在 NAS 上执行以下命令,以测试是否能够从 Nexus 拉取镜像:

docker pull nexus_ip:port/docker-proxy/image_name

4. 注意事项

  • 网络设置:确保您的笔记本与 NAS 在同一网络中,并可以相互访问。
  • 防火墙设置:如果您启用了防火墙,请确保相应的端口(如 8081)是开放的。
  • 证书问题:如果使用 HTTPS,确保 Nexus 配置了有效的 SSL 证书。

通过以上步骤,您就能成功配置 Nexus 作为 Docker Hub 的代理。这不仅提升了镜像的管理效率,还为团队的协作提供了便利。如果您在配置过程中遇到任何问题,请随时与我联系!


http://www.ppmy.cn/devtools/120407.html

相关文章

外包干了1个多月,技术明显退步了。。。。。

回望过去,我是一名普通的本科生,2019年有幸通过校园招聘踏入了广州一家软件公司的大门,成为了一名功能测试工程师。岁月如梭,转眼间,我已在这个岗位上默默耕耘了近四年。起初,我对这份工作充满了热情与期待…

[大语言模型-论文精读] 词性对抗性攻击:文本到图像生成的实证研究

[大语言模型-论文精读] 词性对抗性攻击:文本到图像生成的实证研究 目录 文章目录 [大语言模型-论文精读] 词性对抗性攻击:文本到图像生成的实证研究目录文章研究背景 文章标题摘要1 引言2 相关工作3 数据集创建3.1 数据收集3.2 目标提示生成3.3 数据集注…

通信工程学习:什么是SNMP简单网络管理协议

SNMP:简单网络管理协议 SNMP(Simple Network Management Protocol,简单网络管理协议)是一种用于在计算机网络中管理网络节点(如服务器、工作站、路由器、交换机等)的标准协议。它属于OSI模型的应用层&#…

C#知识|基于反射和接口实现抽象工厂设计模式

哈喽,你好啊,我是雷工! 01 应用场景 在项目的多数据库支持上、业务的多算法封装、以及各种变化的业务中; 02 抽象工厂组成 抽象工厂包括抽象产品(即业务接口,可以通过抽象类或抽象接口设计)…

JAVA笔记 | 实际上用到的策略模式(可直接套用)

自己开发中用到了策略模式,这样写不一定是最好的,但是满足了业务场景跟使用要求,做个笔记,下次有用到可以快速复习跟套用 假设使用场景:有几只宠物,猫跟狗等,要求他们做各种动作,比如…

小程序用户截屏事件

原生小程序: wx.setScreenBrightness({value: 0.5 }); 参数值: value屏幕亮度值,范围 0~1,0 最暗,1 最亮 uniapp: uni.setScreenBrightness({value: 0.5 }); 参数值: value屏幕亮度值&a…

C语言、Eazy_X——五子棋

//五子棋#include<graphics.h>#define board_size 20 #define pixel 600 int pr pixel / board_size; char board_data[board_size][board_size]; char current_piece o; int count 0;//检测指定玩家是否获胜 bool CheckWin(char c) {int i, j;//检查行for (i 0; i &…

FFmpeg源码:avio_skip函数分析

AVIOContext结构体和其相关的函数分析&#xff1a; FFmpeg源码&#xff1a;avio_r8、avio_rl16、avio_rl24、avio_rl32、avio_rl64函数分析 FFmpeg源码&#xff1a;read_packet_wrapper、fill_buffer函数分析 FFmpeg源码&#xff1a;avio_read函数分析 FFmpeg源码&#xff…