环境准备

安装

使用root用户登录,将安装包均放置在/usr/local文件夹下

  • 使用Xshell、Xftp、FileZilla或MobaXterm将上述jdk及nexus安装包上传至/usr/local
  • tar -zxvf jdk-8u211-linux-x64.tar.gz
  • tar -zxvf nexus-3.10.0-04-unix.tar.gz

    此时安装就已经完成了,其实已经可以直接使用root用户启动了,但是为了方便以后管理,我这里添加了一些配置。参考设置小节。

设置

日志存放

nexus启动时,会产生日志和临时文件等,默认情况下会放在与Nexus安装目录同级文件夹sonatype-work中(第一次启动会自动生成),现将其默认位置修改为Nexus的根目录下vim /usr/local/nexus-3.10.0-04/bin/nexus.vmoptions

防火墙

基本参考

高级参考

firewall-cmd --zone=public --add-port=8081/tcp --permanent

HTTPS

端口

Nexus默认端口是8081,它的配置文件在/usr/local/nexus-3.10.0-04/etc/nexus-default.properties中,可以通过cat命令查看:

## DO NOT EDIT - CUSTOMIZATIONS BELONG IN $data-dir/etc/nexus.properties
##
# Jetty section
application-port=8081
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

添加https访问的形式涉及到端口设置,假如准备设置8443为https端口,那么需要修改两个地方:

  1. 新增application-port-ssl=8443
  2. nexus-args属性上追加,${jetty.etc}/jetty-https.xml

注:如果需要将http导向https访问,则追加jetty-http-redirect-to-https.xmlnexus-args,这里我没有强制。

此时也别忘记开防火墙:firewall-cmd --zone=public --add-port=8443/tcp --permanent

keystore

如果此时启动肯定会报错[1],因为还缺keystore.jks的配置,我们使用脚本生成,其中涉及keytool工具使用,因此先保证keytool可以正常使用:

  • 添加JAVA_HOME环境变量

    • vim /etc/profile并在合适位置加入
      export JAVA_HOME=/usr/local/jdk1.8.0_211
      export PATH=$JAVA_HOME/bin:$PATH
    • 刷新环境变量使其立刻生效:resource /etc/profile
    • vim /usr/local/nexus-3.10.0-04/nexus-ssl-generate-keystore.sh
      NEXUS_DOMAIN='Nexus'
      if [[ -z $1 ]]; then
      echo 'please input your ip_address!'
      exit
      fi
      NEXUS_IP_ADDRESS=$1
      PASSWORD='password'
      keytool -genkeypair -keystore keystore.jks -storepass ${PASSWORD} -keypass ${PASSWORD} -alias nexus -keyalg RSA -keysize 2048 -validity 5000 -dname "CN=${NEXUS_DOMAIN}, OU=Nexus, O=Nexus, L=Beijing, ST=Beijing, C=CN" -ext "SAN=IP:${NEXUS_IP_ADDRESS}" -ext "BC=ca:true" mv keystore.jks etc/ssl/
      #keytool -export -alias nexus -keystore keystore.jks -file keystore.cer -storepass ${PASSWORD}
      #mv keystore.cer etc/ssl/
    • 生成keystore/usr/local/nexus-3.10.0-04/nexus-ssl-generate-keystore.sh 192.168.197.198,这里192.168.197.198是本机IP。

开机启动

参考

vim /usr/lib/systemd/system/nexus3.service

[Unit]
Description=nexus3 - private repository
After=network.target remote-fs.target nss-lookup.target [Service]
Type=forking
ExecStart=/usr/local/nexus-3.10.0-04/bin/nexus start
ExecReload=/usr/local/nexus-3.10.0-04/bin/nexus restart
ExecStop=/usr/local/nexus-3.10.0-04/bin/nexus stop [Install]
WantedBy=multi-user.target

此时使用systemctl enable nexus3使配置生效即可。

使用说明
OPTION COMMAND
启动 systemctl start nexus3
停止 systemctl stop nexus3
重启 systemctl restart nexus3

用户

一般不能直接使用root用户,因此需要为nexus添加用户专门运行:

添加用户:adduser nexus

设置密码:passwd nexus

将拥有者设置为nexuschown nexus:nexus -R /usr/local/nexus-3.10.0-04

nexus添加至sudoers:

  • visudo
  • 添加nexus ALL=(ALL) ALL
  • su nexus

启动

sudo systemctl start nexus3


  1. /usr/local/nexus-3.10.0-04/etc/jetty/jetty-https.xml中会涉及读取keystore.jks ↩︎

CentOS7下安装Nexus私服及基础配置的更多相关文章

  1. Linux 环境下安装 Nexus 私服存储库

    镜像下载.域名解析.时间同步请点击阿里云开源镜像站 一.nexus私服存储库简介 Nexus 是一个强大的maven仓库管理器,它极大地简化了本地内部仓库的维护和外部仓库的访问.,还可以用来创建yum ...

  2. centos7下安装docker(26如何配置Health Check)

    Docker只能从容器启动进程的返回代码判断其状态,而对于容器内部应用的运行状况基本没有了解 执行docker run命令时,通常根据dockerfile中的CMD或ENTRYPOINT启动一个进程, ...

  3. Centos7下安装配置Redsocks

    Redsocks是一个开源的网络程序,代码依赖开源的libevent网络库.Redsocks允许你将所有TCP连接重定向到SOCKS或HTTPS代理,比如Shadowsocks(Centos7下安装配 ...

  4. CentOS7下安装MySQL并配置远程连接

    一.CentOS7下安装MySQL数据库 CentOS7默认的安装包里面已经没有 MySQL-Server安装包了,远程镜像中也没有了. 默认的是MariaDB (MySQL的一个分支,开发这个分支的 ...

  5. Linux下建立Nexus私服

    Linux下建立Nexus私服 要安装3个东西,然后配置私服: 1.JDK 2.Maven 3.Nexus 然后配置 1.JDK的安装 下载JDK安装包,格式为RPM格式,安装即可 安装程序 #rpm ...

  6. docker(一) Centos7下安装docker

    docker(一) Centos7下安装dockerdocker(二) windows10下安装dockerdocker(三) 镜像和容器常用命令 docker(四) 使用Dockerfile构建镜像 ...

  7. CentOS7 下安装 iSCSI Target(tgt) ,使用 Ceph rbd

    目录 一.iSCSI 介绍 1. iSCSI 定义 2. 几种常见的 iSCSI Target 3. 优缺点比较 二.安装步骤 1. 关闭防火墙 2. 关闭selinux 3. 通过 yum 安装 t ...

  8. CentOS7 下 安装 supervisor以及使用

    CentOS7 下 安装 supervisor 以及使用 手动安装 [注] linux环境必须安装 python 1.获取supervisor包:[https://pypi.python.org/py ...

  9. Linux CentOs7 下安装 redis

    Linux CentOs7 下安装 redis 请将以下命令放入linux命令行中运行 如果安装过程前没有安装GCC请先安装  命令如下 $ yum install gcc-c++ $ wget ht ...

随机推荐

  1. zabbix--基本操作

    zabbix 快速上手 示例一些zabbix的最基本的配置: 添加主机群组:添加主机:创建监控项:创建触发器 添加主机群组 参考官档:https://www.zabbix.com/documentat ...

  2. scrum-master个人实践回顾总结

    个人回顾总结 一.开课提出问题 第一次博客地址:https://www.cnblogs.com/Slow-Walker/p/11513179.html 二.问题回答 2.1问题1:针对单元测试 怎么保 ...

  3. PAT 乙级 1004.成绩排名 C++/Java

    1004 成绩排名 (20 分) 题目来源 读入 n(>)名学生的姓名.学号.成绩,分别输出成绩最高和成绩最低学生的姓名和学号. 输入格式: 每个测试输入包含 1 个测试用例,格式为 第 1 行 ...

  4. 【BZOJ 4004】 装备购买(高斯消元+贪心)

    装备购买 题目 脸哥最近在玩一款神奇的游戏,这个游戏里有 n 件装备,每件装备有 m 个属性,用向量zi(aj ,.....,am) 表示 (1 <= i <= n; 1 <= j ...

  5. 基线baseline

    vertical:元素的垂直对齐方式:默认 vertical:baseline ,一行内对其基线,如下图就是以父元素基线对齐,上图vertical:top 垂直对齐方式,行内元素头部对齐.

  6. django-支付宝支付

    安装python-alipay-sdk pip install python-alipay-sdk --upgrade 配置 视图函数orders/views.py # 订单支付 # /order/p ...

  7. iOS App开发那些事:如何选择合适的人、规范和框架?

    http://www.cocoachina.com/ios/20141202/10386.html 自从做Team Leader之后,身上权责发生了变化,于是让我烦恼的不再是具体某个功能,某个界面的实 ...

  8. hash isEqual

    hash Returns an integer that can be used as a table address in a hash table structure. If two object ...

  9. LeetCode 752. Open the Lock

    原题链接在这里:https://leetcode.com/problems/open-the-lock/ 题目: You have a lock in front of you with 4 circ ...

  10. 破解EXCEL工作表保护密码

    神技 破解EXCEL工作表保护密码 http://www.mr-wu.cn/crack-excel-workbook-protection/ 我们可以通过新建工作本,来创建一个新的工作本来创造新的宏而 ...