本文正在参加「金石计划 . 瓜分6万现金大奖」
本文主讲Nexus的搭建和发包,宝塔面板的配置这里就不讲喽~~
1. Nexus 介绍
Nexus 的全称是Nexus Repository Manager,是Sonatype公司的一个产品。它是一个强大的仓库管理器
,极大地简化了内部仓库的维护和外部仓库的访问,我们主要用它来搭建公司私仓,便于团队开发规范化,它不仅仅可以创建 npm
私仓,同样也对NuGet、Docker、Maven
、Go、Apt等包管理器和格式提供支持,下面附上一张官网截图:
2. Docker安装Nexus3
// 1. 拉取nexus3镜像
docker pull sonatype/nexus3
// 2. 建立volume持久化数据
docker volume create --name nexus-data
// 3. 运行容器,此时会生成一串容器ID,下面登录密码就在这个文件夹下
docker run --privileged=true -d -p 8081:8081 --name nexus -v nexus-data:/nexus-data sonatype/nexus3
// 4. Nexus3 要求运行内存为2G以上,如服务器内存过小,可使用下面语句运行容器
docker run -d --restart=always --name=nexus3 -p 8081:8081 --privileged=true -e INSTALL4J_ADD_VM_PARAMS="-Xms512M -Xmx512M -XX:MaxDirectMemorySize=512M" -v /docker/nexus:/var/nexus-data sonatype/nexus3
Tip:序号3和4选一个即可
3. 测试
(1)本地测试,输入如下指令,如打印出很长一段文本则为成功
curl http://localhost:8081/
(2)服务器测试,打开浏览器,输入地址:http://xx.xx.xx.xx:8081 可看到如下界面即为成功
4. 登录
账号为:admin
密码:第一次为自动生成
的,后面登录进去后需要重置密码
,路径举例:/var/lib/docker/volumes/ccc2b81d2f4acb345183edf40afb9f0992d46e4f420748b6e8420e2f718574d1/_data
双击打开,如下图,这就是完整的密码:
5. 创建仓库(hosted
:私有仓库 proxy
:代理仓库 group
:仓库组)
(1)配置proxy仓库,使用淘宝代理地址:registry.npm.taobao.org/
(2)配置hosted仓库
(3)配置group仓库
6. 通过 nrm
新增镜像源,(暂时不熟悉nrm的小伙伴可以先了解一下)
(1)拷贝镜像源
(2)nrm 新增镜像
// 1. 查看镜像
nrm ls
// 2. 新增镜像
nrm add myNexus【自定义名称】 http://xx.xx.xx.xx:8081/repository/npm-group/
// 3. 使用镜像
nrm use myNexus
7. 添加权限
认证
8. 添加角色
9. 添加用户
10.发包配置:(同学这边假设你已经写好代码了~~)
(1)创建 .npmrc 配置
registry=http://xx.xx.xx.xx:8081/repository/npm-group/
always-auth=true
(2)package.json 配置

(3)仓库登录
pnpm login -–registry=http://xx.xx.xx.xx:8081/repository/npm-hosted/