Centos下利用nexus搭建私有仓库
一、下载安装
下载
服务器为centos,去 https://www.sonatype.com/download-oss-sonatype 下载unix版本的。
安装
- 解压
tar xvf nexus-3.21.1-01-unix.tar.gzmv nexus-3.21.1-01 /home/nexus
- 开启端口
默认会在8081端口启动,因为我的8081端口已被使用,改用8082端口。
firewall-cmd --zone=public --add-port=8082/tcp --permanentfirewall-cmd --reload
- 创建nexus的运行用户
adduser nexus # 创建用户passwd nexus # 改密码
给nexu用户加权限
vi /etc/sudoerschmod u+w /etc/sudoers
添加
nexus ALL=(ALL) ALL
保存后撤回写的权限
chmod u-w /etc/sudoers
修改nexus目录的所有者
chown -R nexus /home/nexus
二、运行
修改配置文件
cd /home/nexus/etc/vim nexus-default.properties
改为
## DO NOT EDIT - CUSTOMIZATIONS BELONG IN $data-dir/etc/nexus.properties##
# Jetty section
application-port=8082
application-host=0.0.0.0
nexus-args=${jetty.etc}/jetty.xml,${jetty.etc}/jetty-http.xml,${jetty.etc}/jetty-requestlog.xml
nexus-context-path=/
# Nexus section
nexus-edition=nexus-pro-edition
nexus-features=
nexus-pro-feature
nexus.hazelcast.discovery.isEnabled=true
启动
- 运行
cd /home/nexus/bin/./nexus start #启动
./nexus restart
./nexus stop
./nexus run
显示nexus is runing 说明已经运行。
- 改运行用户
nexus不建议用root用户启动。我们用nexus用户来运行他。
进入到nexus的bin目录
编辑下面这个文件
vi nexus.rc
改为 run_as_user="nexus"
,注意把前面的注释符号给去掉。
- 给nexus的启动文件添加java_home(可选)
在nexus的bin目录下打开nexus的启动文件
输入下面的命令
vi nexus
然后在开头找到下面这句代码,取消注释,添加上jdk地址
INSTALL4J_JAVA_HOME_OVERRIDE=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-1.el7_6.x86_64
添加systemctl启动服务
vi /usr/lib/systemd/system/nexus.service
写入
[Unit] Description = nexus service
After = network.target
[Service]
Type = forking
LimitNOFILE = 65536
ExecStart = /home/nexus/bin/nexus start
ExecReload= //home/nexus/bin/nexus restart
ExecStop = /home/nexus/bin/nexus stop
User = nexus
Restart = on- abort
[Install]
WantedBy = multi-user.target
分别执行下面的命令
systemctl daemon-reloadsystemctl enable nexus.service
systemctl start nexus.service
然后在浏览器输入http://ip:8082
然后点击登陆输入账号admin 密码admin123
三、使用
在本地配置maven的settings.xml
vi ~/.m2/settings.xml
在根节点加入servers配置
<servers> <server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>
用于在执行mvn deploy
时进行授权。这是用admin用户,也可以在nexus中创建新的用户和角色来授权。
同时,需要在nexus中放开匿名访问权限,否则在访问maven-public进行拉取的时候会报"Not Authorized"错误。
pom.xml配置
- 包发布配置
<distributionManagement> <snapshotRepository>
<id>snapshots</id>
<url>http://1.2.3.4:8082/repository/maven-snapshots/</url>
</snapshotRepository>
<repository>
<id>releases</id>
<url>http://1.2.3.4:8082/repository/maven-releases/</url>
</repository>
</distributionManagement>
- 拉取仓库配置
<repositories> <repository>
<id>nexus</id>
<name>nexus repository</name>
<url>http://1.2.3.4:8082/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
以上是 Centos下利用nexus搭建私有仓库 的全部内容, 来源链接: utcz.com/z/514466.html