实现 Docker 镜像代理的工具有很多,但相对通用的却不多。本文将介绍如何使用 Docker Compose 快速搭建一个镜像代理,此方法也适用于其他软件源的代理。 如果你仅需要对单台机器设置docker网络代理,请查看这篇文章 原始链接 永久链接 所需软件 为了快速搭建环境,我们将使用 Docker Compose。对于 Docker Compose 的安装,这个先有鸡还是先有蛋的问题,还是交给魔法解决吧。以下是配置文件 docker-compose.yml : services: nexus: image: sonatype/nexus3:latest user: 0:0 # 仅因为该 yml 文件放在 /root 目录下,Docker 容器用户无权限,如放在其他目录且注重安全可删除此行 container_name: nexus3 restart: always ports: - 1024:8081 - 8001:8001 volumes: - ./nexus-data:/nexus-data 建议使用 Nginx 进行反向代理,并设置好单个请求文件的最大限制。 本文不涉及反向代理配置。 Nginx配置文件示例 启动并配置 启动 使用以下命令启动服务: docker compose up 启动后,使用以下命令获取管理员密码: docker exec -it nexus3 /bin/bash cat /nexus-data/admin.password 获取到的字符串即为 admin 用户的密码。首次登录时会要求修改密码。 在设置过程中,会询问是否允许匿名访问。如果只需要 Docker 仓库,建议设置为不允许,否则可以允许。但最终使用 Docker 仓库仍需执行 docker login 。 配置 配置 HTTP 代理 首先配置 HTTP 代理,访问 [server-ip]:1024/#admin/system/http ,在 Proxy Settings 中填写正确的 HTTP 代理。 配置仓库 删除无用的镜像仓库。 点击 “Create repository”,选择 “docker (proxy)”。 配置如...