使用 Docker 和 Nexus 搭建私有 Maven 仓库

栏目: 编程工具 · 发布时间: 7年前

内容简介:首先确保服务器已经安装了 Docker,然后执行以下命令启动 Nexus(可以考虑写成测试是否成功:默认管理员账号为 admin,密码为 admin123,

使用 Docker 启动 Nexus

首先确保服务器已经安装了 Docker,然后执行以下命令启动 Nexus(可以考虑写成 docker-compose.yml ):

# 创建存储数据的目录
mkdir data
# 修改目录权限,否则 nexus 启动时会报错没有权限
chown -R 200 data
# 启动
docker run -d -p 8081:8081 -v ./data:/nexus-data --name nexus sonatype/nexus3

测试是否成功:

curl -u admin:admin123 http://localhost:8081/service/metrics/ping

默认管理员账号为 admin,密码为 admin123, 一定要记得修改此密码

配置 Nexus

创建仓库

Nexus 默认创建了四个 Maven 仓库,因此不需要手动去创建。

Administration >> Repository >> Repositories 页面可以看到仓库列表:

仓库名称 类型 格式 说明
maven-central proxy maven2 中央仓库
maven-releases hosted maven2 正式版仓库
maven-snapshots hosted maven2 测试版仓库
maven-public group maven2 仓库组,集合了其他三个仓库

关闭匿名访客权限

默认情况下匿名访客时可以看到仓库列表的,为了不泄露信息,需要关闭其访问权限。

Administration >> Security >> Anonymous 页面,取消打勾 Allow anonymous users to access the server 并保存。

新建角色和用户

系统默认的 admmin 账户权限太大,一般建议新建一个普通账户,并授予有限的权限。首先在 Administration >> Security >> Roles 页面新建一个角色,并授予以下的权限:

nx-repository-view-*-*-browse
nx-repository-view-maven2-*-*

接着新建一个用户,授予该角色权限。

配置 Maven 并发布

修改文件 ~/.m2/settings.xml ,增加:

<servers>
    <!-- 增加服务器账户和密码 mynexus -->
    <server>
        <id>mynexus</id>
        <username>user</username>
        <password>password</password>
    </server>
</servers>

修改 pom.xml 文件:

<repositories>
    <!-- 下载仓库使用 maven-public -->
    <repository>
        <id>mynexus</id>
        <url>http://localhost:8081/repository/maven-public/</url>
    </repository>
</repositories>

<distributionManagement>
     <!-- 发布正式版本仓库使用 maven-releases -->
    <repository>
        <id>mynexus</id>
        <url>http://localhost:8081/repository/maven-releases/</url>
    </repository>

     <!-- 发布测试版本仓库使用 maven-snapshots -->
    <snapshotRepository>
        <id>mynexus</id>
        <url>http://localhost:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
</distributionManagement>

然后执行 mvn deploy 部署项目,如果控制台打印出 BUILD SUCCESS 则表示发布成功,可以通过 http://localhost:8081/#browse/browse:maven-public 确认仓库上是否有新发布的代码包。

参考资料


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Out of their Minds

Out of their Minds

Dennis Shasha、Cathy Lazere / Springer / 1998-07-02 / USD 16.00

This best-selling book is now available in an inexpensive softcover format. Imagine living during the Renaissance and being able to interview that eras greatest scientists about their inspirations, di......一起来看看 《Out of their Minds》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

SHA 加密
SHA 加密

SHA 加密工具