欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

如何在Linux上安装Maven私服Nexus 3

程序员文章站 2022-05-22 21:00:21
...

这篇文章将教会你在Linux上以一种安全的方式安装Nexus。

这篇文章是在Redhat7上测试过的,在CentOS7上也应该是通用的

Step 1: 登录你的Linux服务器并更新以下

yum update -y 

Step 2: 安装OpenJDK1.8(官方推荐的是Oracle JDK)

yum install java-1.8.0-openjdk.x86_64 

Step 3: 创建一个目录并进入这个目录(目录名自己起)

mkdir /maxrocky && cd /maxrocky 

Step 4: 下载最新版的Nexus, 你可以从这个链接获取最新版本. 在这里我是用的是nexus 3.

wget https://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-3.0.2-02-unix.tar.gz 

解压

tar -xvf nexus-3.0.2-02-unix.tar.gz 

将解压的文件夹重新命名为nexus

mv nexus-3.0.2-02 nexus 

Step 5: 安全起见,我们建立一个nexus用户用来启动nexus

adduser nexus 

更改nexus文件夹的访问权限更改为nexus用户

sudo chown -R nexus:nexus /maxrocky/nexus 

打开/maxrocky/nexus/bin/nexus.rc 文件, 修改启动用户如下

run_as_user=”nexus” 

Step 6: 如果你想更改默认的数据目录,可以打开nexus的配置文件,修改-Dkaraf.data属性。

vi /maxrocky/nexus/bin/nexus.vmoptions 

下面来一个例子

-Xms1200M

-Xmx1200M

-XX:+UnlockDiagnosticVMOptions

-XX:+UnsyncloadClass

-Djava.net.preferIPv4Stack=truer

-Dkaraf.home=.

-Dkaraf.base=.

-Dkaraf.etc=etc

-Djava.util.logging.config.file=etc/java.util.logging.properties

-Dkaraf.data=/nexus/nexus-data

-Djava.io.tmpdir=data/tmp

-Dkaraf.startLocalConsole=false

那么接下来我们就可以启动Nexus了。我们最好将nexus服务添加到linux的启动服务init.d中,设置步骤如下:

Step 7: 为nexus创建一个链接到/etc/init.d文件夹.

ln -s /maxrocky/nexus/bin/nexus /etc/init.d/nexus 

Step 8: 执行以下命令将nexus服务添加到系统boot中

chkconfig --add nexus
chkconfig --levels 345 nexus on 

这样就配置完了,我们可以使用以下命令控制Nexus服务的开启/关闭/重启。

service nexus start/stop/restart

上面的命令将会在8081端口启动服务,我们可以在 http://ip:8081上查看nexus服务。

Step 9: 使用默认的用户名和密码登录

User Name: admin
Password: admin123 

番外:配置nginx代理

server {
        listen       80;
        server_name  example.com; #域名
        access_log  logs/maven.access.log  main;
        error_log   logs/maven.error.log;
        location /maven {# 把所有含有/maven的url代理到http://127.0.0.1:8080/maven
        proxy_pass http://127.0.0.1:8080/maven;
        client_max_body_size 10m;
        proxy_connect_timeout 90;
        proxy_set_header X-CSRF-TOKEN api;
        proxy_set_header Set-Cookie CLM-CSRF-TOKEN=api;
        }

}
相关标签: gradle maven