1.拉取镜像
docker pull sonatype/nexus3:latest
2.启动镜像
# 创建数据持久化目录
mkdir -p /opt/nexus/data
# 授权
chmod 777 -R /opt/nexus
# 启动容器
docker run -d \
--restart always \
--name nexus \
-p 8081:8081 \
-v /opt/nexus/data:/nexus-data \
-v /etc/localtime:/etc/localtime:ro \
-e INSTALL4J_ADD_VM_PARAMS="-Xms256M -Xmx512M -XX:MaxDirectMemorySize=1g" \
-e NEXUS_CONTEXT="/" \
sonatype/nexus3:latest
3.使用
1.容器启动完成后,访问 http://192.168.67.12:8081,账号:admin,密码需要查看日志:
# 查看容器日志,找到初始密码
docker logs nexus | grep "admin.password"
# 或者直接查看文件
docker exec nexus cat /nexus-data/admin.password
首次访问需要修改密码......
2.启用匿名访问
允许浏览、搜索、下载,但没权限新增修改。
3.本地 maven settings.xml 配置
<settings>
# 如果需要推送 jar 包时增加
<servers>
<server>
<id>akim-maven</id>
<username>admin</username>
<password>123456</password>
</server>
</servers>
# 这个配置匿名拉取时使用
<mirrors>
<mirror>
<id>akim-maven</id>
<mirrorOf>*</mirrorOf>
<url>http://192.168.67.12:8081/repository/maven-public/</url>
</mirror>
</mirrors>
</settings>
4.推送工程 pom 配置
<project>
<distributionManagement>
<repository>
<id>akim-maven</id>
<name>release</name>
<url>http://192.168.67.12:8081/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>akim-maven</id>
<name>release</name>
<url>http://192.168.67.12:8081/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
</project>
5.拉取工程 pom 配置
使用第3点《本地 maven settings.xml 配置》中的匿名访问的 mirrors 即可
6.删除推送包及清空历史包








