nexus 私服搭建

部署

1. Host

xxx.xxx.xxx.xxx:port

2. docker 搭建

  1. docker pull docker.io/sonatype/nexus
  2. docker run -d --restart always -p 8082:8081 --name nexus -v $PWD/data:/nexus-data sonatype/nexus
  3. 访问地址:http://xxx.xxx.xxx.xxx:port/nexus
  4. 默认用户名密码 admin/admin123

3. 代码打包上传私服

  • Maven pom 配置

    
        <distributionManagement>
            <repository>
                <id>nexus-releases</id>
                <name>Nexus Release Repository</name>
                <url>http://${nexus.host}/nexus/content/repositories/releases/</url>
            </repository>
            <snapshotRepository>
                <id>snapshots</id>
                <name>Nexus Snapshot Repository</name>
                <url>http://${nexus.host}/nexus/content/repositories/snapshots/</url>
            </snapshotRepository>
        </distributionManagement>
    
  • maven 安装路径 conf/settings.xml servers 节点 添加

        <server>
          <id>nexus-releases</id>
          <username>admin</username>
          <password>admin123</password>
        </server>
    
  • tips

    pom 中的 id 与 settings 中的 id 节点名称相同

4. 发布部署

mvn clean && mvn -T 4C deploy -D maven.test.skip=true

5. 发布后访问地址

http://xxx.xxx.xxx.xxx:port/nexus/content/repositories/releases/

问题处理

1. 重复部署问题

  1. 错误信息
Failed to deploy artifacts: Could not transfer artifact | Failed to transfer file .pom with status code 400 -> [Help 1]
  1. 问题原因

    nexus 默认配置不允许 重复 deploy

  2. 解决方案

    ->Releases

    ->configuration

    -> Deployment Policy:Allow Redeploy

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。