阿里云Ubuntu 16.04系统下用sinopia搭建npm私库

408 阅读2分钟

1.安装sinopia成功需要node及python环境
node安装最新稳定版参考此文章 juejin.cn/post/684490…
python安装请百度

2.安装sinopia npm install -g sinopia 安装完成后执行/root/.config/sinopia命令,
可以看到sinopia的相关配置及包存储路径

3.测试是否安装成功
第2步安装完成可以在命令窗口输入 sinopia 命令启动服务,但是这种启动方式服务不稳定,如果sinopia报错可以通过这种方式启动直接在终端查看日志打印。排错后可以使用 pm2 工具

4.安装源管理工具nrm、进程守护工具pm2
npm install -g nrm
npm install -g pm2

5.启动sinopia服务
pm2 start sinopia
修改sinopia的配置后重启,在配置文件中增加listen:0.0.0.0:4873
pm2 restart sinopia

6.修改云服务配置允许外部访问4873端口,修改方法参考以下文章
juejin.cn/post/684490… 修改成功后外部访问到页面如下

7.把服务器的默认npm源切换到服务器本身的源(39.108.xxx.xx为服务器的对外IP,4873为sinopia的默认端口)
nrm add self 39.108.xxx.xx:4873 //self为这个服务器源的别名
nrm use self // 切换npm源至自身
npm adduser --registry 39.108.xxx.xx:4873 //此处添加的用户为客户端用这个源的时候npm login登录使用

8.在服务器中发布包
a.目录切换至要发布的目录执行npm init生成要发布包的基本信息,初始版本号在init的过程中手动输入
b.通过npm puhlish发布

9.版本更新
a. 目录切换至要发布的目录执行npm version patch自动增加版本号
b.通过npm publish发布
c.发布成功后外部访问库的页面如下

10.客户端安装
nrm add self 39.108.xxx.xx:4873
nrm use self
npm install npmtest --save-dev