运维|devops|docker|docker私有仓库搭建(nexus)

📅 2026/8/1 3:55:24
运维|devops|docker|docker私有仓库搭建(nexus)
运维|devops|docker|docker私有仓库搭建(nexus) 目录1. 运维|devops|docker|docker私有仓库搭建(nexus)1.1 主流仓库比较1.2 如果Nexus基于docker部署1.2.1 重装1.3 Sonatype Nexus 开启docker1.3.1 激活 Docker Bearer Token Realm1.3.2 创建 Docker 专用的 Blob 存储1.3.3 创建 Docker Hosted 仓库1.3.4 验证是否开启1.4 打通docker和仓库1.4.1 增加如下配置1.4.2 重启docker1.4.3 验证配置是否生效1.4.4 登录1.5 推送测试镜像1.6 拉取测试镜像1.7 Nexus Web基于Nexus 3.93 社区版Community Edition主流仓库比较方案核心优势局限性适用场景Docker Registry部署极其简单资源占用少功能单一无UI界面无用户管理个人学习、小型测试环境Harbor功能强大支持RBAC权限、漏洞扫描、镜像复制、Web UI部署稍复杂占用资源较多中大型企业生产环境首选Sonatype Nexus一个工具管理所有构建产物如 Maven, npm, DockerDocker 仓库功能相对基础团队已使用 Nexus 管理其他依赖如果Nexus基于docker部署需要卸载重装,开发8881端口密码和存储数据会丢失重装bashdocker commit nexus my-nexus-with-data docker stop nexus docker rm nexus docker run -d \ --name nexus \ -p 8082:8081 \ -p 8881:8881 \ my-nexus-with-dataSonatype Nexus 开启docker激活 Docker Bearer Token Realm创建 Docker 专用的 Blob 存储docker-blob创建 Docker Hosted 仓库docker-hosted验证是否开启docker 内部验证bashdocker exec -it nexus sh wget -qO- http://localhost:8881/v2/其他服务器验证bashcurl -v http://192.168.0.68:8881/v2/打通docker和仓库sudo nano /etc/docker/daemon.json增加如下配置json{ registry-mirrors: [ https://docker.mirrors.ustc.edu.cn ], insecure-registries: [192.168.0.68:8881] }重启dockerbashsudo systemctl daemon-reload sudo systemctl restart docker验证配置是否生效bashdocker info | grep -A 2 Insecure Registries登录docker login 192.168.0.68:8881(使用nexus用户名和密码)推送测试镜像bash# 拉取测试镜像 docker pull nginx:alpine # 打标签 docker tag nginx:alpine 192.168.0.68:8881/nginx:alpine # 推送 docker push 192.168.0.68:8881/nginx:alpine拉取测试镜像bash# 删除本地镜像 docker rmi 192.168.0.68:8881/nginx:alpine # 从私有仓库拉取 docker pull 192.168.0.68:8881/nginx:alpineNexus Web