Nexus

本文最后更新于:2023年12月5日 晚上

Nexus 是一个强大的 Maven 仓库管理器,它极大地简化了自己内部仓库的维护和外部仓库的访问

官方下载:https://help.sonatype.com/repomanager3/download/download-archives---repository-manager-3

部署 Nexus

  1. 下载、解压、创建用户

    [root@nexus src]$useradd -r -s /sbin/nologin nexus  # 创建nexus用户
    [root@nexus src]$tar zxf nexus-3.29.2-02-unix.tar.gz
    [root@nexus src]$mv nexus-3.29.2-02 /usr/local/nexus
    [root@nexus src]$mv sonatype-work/ /usr/local/
    [root@nexus src]$cd /usr/local/
    [root@nexus local]$chown -R nexus:nexus ./nexus/
    [root@nexus local]$chown -R nexus:nexus ./sonatype-work/
    [root@nexus local]$echo 'nexus - nofile 65536' >> /etc/security/limits.conf
  2. Service 启动文件,官方提供

    [root@nexus ~]$cat /lib/systemd/system/nexus.service
    [Unit]
    Description=nexus service
    After=network.target
    
    [Service]
    Type=forking
    LimitNOFILE=65536
    ExecStart=/usr/local/nexus/bin/nexus start
    ExecStop=/usr/local/nexus/bin/nexus stop
    User=nexus
    Restart=on-abort
    TimeoutSec=600
    
    [Install]
    WantedBy=multi-user.target
    
    [root@nexus ~]$systemctl start nexus.service # 需要几分钟时间启动
  3. 设置向导:

  4. 验证默认仓库

    • Hosted:本地仓库,通常我们会部署自己的构件到这一类型的仓库,比如公司的第三方库
    • Proxy:代理仓库,它们被用来代理远程的公共仓库,如 maven 中央仓库(官方仓库)
    • Group:仓库组,用来合并多个 hosted/proxy 仓库,当你的项目希望在多个 repository 使用资源时就不需要多次引用了,只需要引用一个 group 即可

构建私有 yum 仓库

  1. 配置仓库的数据目录

  2. 仓库配置,以 zabbix 为例

  3. centos 7.x 配置 yum 仓库

    [root@c71 ~]$vim /etc/yum.repos.d/zabbix.repo
    [root@c71 ~]$cat /etc/yum.repos.d/zabbix.repo
    [zabbix-nexus]
    name=zabbix
    baseurl=http://10.0.1.103:8081/repository/zabbix-proxy/
    enabled=1
    gpgcheck=0
  4. 测试:

  5. 下载过的包会缓存下来

数据备份

Nexus 中普通数据信息和元数据是分开存储的,普通数据是保存在 blob 中,而元数据保存在数据库中,所以在备份的时候必须同时进行备份普通数据和元数据,才能在后期恢复数据的时候保证数据的最终完整性

数据量太大,而且不影响用户业务,数据备份没什么意义


Nexus
http://blog.lujinkai.cn/运维/消息队列与微服务/Nexus/
作者
像方便面一样的男子
发布于
2021年2月24日
更新于
2023年12月5日
许可协议