这篇文章将教会你在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;
}
}