Sonatype Nexus Repository Docker部署
🚀 一、Docker 部署 vs 原生部署 对比
特性 | Docker 部署 | 原生部署 |
---|---|---|
部署速度 | ✅ 非常快,只需几条命令 | 较慢,需要配置环境 |
升级维护 | ✅ 容器替换即可 | 较繁琐,需手动备份和配置 |
数据管理 | 🔶 需挂载卷手动配置 | ✅ 默认在宿主机 |
性能 | 几乎无差异 | 原生略好,但差别不大 |
系统依赖 | ✅ 几乎没有 | 需要特定 JDK |
适合场景 | 快速测试、容器化运维 | 稳定生产环境长期运行 |
总结:
- ✅ 测试、轻量部署、CI/CD 环境:建议用 Docker
- ✅ 长期运行、大数据量或需深入调优的生产环境:建议用原生部署
🧱 二、Docker 部署 Nexus OSS 3.70.3-01 示例
1. 创建持久化目录
mkdir -p /opt/nexus-data
chown -R 200:200 /opt/nexus-data
说明:nexus
容器默认使用 UID 为 200 的用户运行,所以这里要提前设置权限。
2. 启动容器(推荐使用 Docker Compose)
创建文件 docker-compose.yml
:
version: '3'
services:nexus:image: sonatype/nexus3:3.70.3container_name: nexusports:- "8081:8081"volumes:- /opt/nexus-data:/nexus-datarestart: unless-stoppedenvironment:INSTALL4J_ADD_VM_PARAMS: "-Xms512m -Xmx2g -XX:MaxDirectMemorySize=2g"
然后运行:
docker compose up -d
3. 查看状态 & 访问
- 查看日志:
docker logs -f nexus
- 浏览器访问:
http://<你的服务器IP>:8081
默认初始密码在:
/opt/nexus-data/admin.password
🔄 三、未来维护建议
- 容器方式容易升级,只需重新拉镜像、挂载数据卷
- 可配合反向代理如 nginx 使用
https
- 注意数据备份(定期备份
/opt/nexus-data
)