构建 HTTP Nexus

  1. version: '3.7'
  2. services:
  3. nexus:
  4. restart: always
  5. image: sonatype/nexus3
  6. container_name: nexus
  7. ports:
  8. - 8081:8081
  9. volumes:
  10. - /usr/local/docker/nexus/data:/nexus-data

注: 启动时如果出现权限问题可以使用:chmod 777 /usr/local/docker/nexus/data 赋予数据卷目录可读可写的权限

构建HTTPS Nexus

  1. version: '3.7'
  2. services:
  3. nexus:
  4. restart: always
  5. image: sonatype/nexus3
  6. container_name: nexus
  7. ports:
  8. - 8443:8443
  9. volumes:
  10. - /usr/local/docker/nexus/data:/nexus-data
  • /usr/local/docker/nexus/data/etc/中创建ssl文件夹,并添加证书文件keystore.jks证书密码为password

  • 编辑/usr/local/docker/nexus/data/etc/nexus.properties文件,修改如下:

  1. nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml,${jetty.etc}/jetty-https.xml
  2. ssl.etc=${karaf.data}/etc/ssl
  3. application-port-ssl=8443

本地Maven配置认证信息

在 Maven settings.xml 中添加 Nexus 认证信息 (servers 节点下)

  1. <servers>
  2. <server>
  3. <id>nexus-public</id>
  4. <username>admin</username>
  5. <password>Aa123456</password>
  6. </server>
  7. <server>
  8. <id>nexus-releases</id>
  9. <username>admin</username>
  10. <password>Aa123456</password>
  11. </server>
  12. <server>
  13. <id>nexus-snapshots</id>
  14. <username>admin</username>
  15. <password>Aa123456</password>
  16. </server>
  17. </servers>