私服搭建

编写docker-compose.yml

  1. version: "3"
  2. services:
  3. nexus3:
  4. image: sonatype/nexus3
  5. container_name: nexus3
  6. ports:
  7. - "9000:8081"
  8. volumes:
  9. - ./data:/nexus-data //这里的./data请自行改成自己创建的文件夹的路径
  10. logging:
  11. driver: "json-file"
  12. options:
  13. max-size: "10k"
  14. max-file: "10"
  15. restart: always

创建文件夹并给权限

sudo mkdir data && sudo chown -R 200 data

运行docker-compose

docker-compose up -d

访问配置权限

Admin 访问登录:
http://IP:9000,将这里的ip改为你部署服务的ip或域名地址
注意:账户初始为admin,密码要去容器内部/nexus-data/admin.password文件里找

docker exec -it 容器id /bin/bash

在界面中配置角色:
8723ECA2-2B92-4E7C-9066-3905A7D80696.pngC016093F-F5FA-4DA6-B079-D0B22FD60FD1.png

项目配置

Maven 配置settings文件配置

<server>
      <id>nexus</id>
      <username>java</username> <!-- Create user 添加角色的账号 -->
      <password>java</password> <!-- Create user 添加角色的密码 -->
    </server>

项目 pom.xml 配置

<!-- Nexus 私服 -->
    <distributionManagement>
        <!-- 定义releases库的坐标 -->
        <repository>
            <id>nexus</id>
            <url>http://192.168.224.69:8081/repository/maven-releases/</url>
        </repository>
        <!-- 定义snapshots库的坐标 -->
        <snapshotRepository>
            <id>nexus</id>
            <url>http://192.168.224.69:8081/repository/maven-snapshots/</url>
            <uniqueVersion>false</uniqueVersion>
        </snapshotRepository>
    </distributionManagement>

    <repositories>
        <repository>
            <id>nexus</id>
            <url>http://192.168.224.69:8081/repository/maven-public</url>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>always</updatePolicy>
            </snapshots>
        </repository>
    </repositories>

项目生成部署

项目执行 mvn clean install deploy -Dmaven.test.skip=true
(
    发布的是 releases 还是 snapshots 由项目 pom.xml 的 version 版本号是否以 -SNAPSHOT 判断标识
    多模块项目升级版本号步骤
        1. 修改`pom.xml`, 升级`parent`版本号
        2. 修改子模块
            2.1 手动修改所有子模块的依赖
            2.2 运行`mvn versions:update-child-modules -DgenerateBackupPoms=false`, 更新其子项目的依赖
        3. Import Changes
)
访问 http://IP:8081/#browse/search/maven 查看有没有构建部署记录