npm私服搭建 (PM2 Not tested)

一、确保node安装
命令行执行node -v和npm -v,检查是否安装若无推荐文章node管理
二、安装verdaccio   cmd直接输入verdaccio
1、命令行执行:npm install -g verdaccio --unsafe-perm

如图无报错则表示verdaccio安装成功。

2、运行verdaccio

访问localhost:4873,可以看到登录页面

 

 

3、修改verdaccio配置,指定仓库目录

在配置文件的末尾添加listen: 0.0.0.0:4873,配置此选项则是允许任何外部的所有IP都可以访问到此服务

storage选项配置,指定仓库的路径(位置),注意路径是用斜线,而不是反斜线


然后在另外一台电脑验证,如下图所示打开网页(http://xxx.xxx.x.xxx:4873
):
注:这一步很重要,若是服务器跑的服务,需确认4873端口已新建规则并开启

若能打开,则表示listen: 0.0.0.0:4873配置已生效。

 

4、安装nrm
nrm可以用来管理自己的npm代理,快速修改,切换,增加删除npm镜像地址等。

npm install -g nrm

//添加一个私有的npm源
nrm add verdaccio http://localhost:4873/
//查看可选源 星号代表当前使用源
nrm ls
//切换npm源
nrm use verdaccio

 

 

添加npm账户
npm adduser //添加用户之前要先启动verdaccio

登录用户

npm login

如果不想别人随便添加用户的话找到上面的verdaccio的配置文件config.yml如下图。修改max_users:-1,默认是500

 

 


发布npm包
新建一个文件夹mypackage执行

npm init //全部都按回车键即可。

生成了一个package.json文件。然后新建一个js文件

//index.js
module.exports.hello = function(name){
return "hello" + name;
}

然后在这个目录下执行npm publish完成后就可以在http://localhost:4873/看到我们发布的包了。

 

 

在package.json文件可以修改包的显示信息。

 

 

这样就完成了我们npm私人库的搭建。

安装pm2
pm2是node进程管理工具,可以后台运行,终端关闭不影响

npm install -g pm2 //安装

pm2启动verdaccio服务
pm2 start verdaccio

 

 

记得我最上面说的坑吗。这里如果你把npm包的全局路径下的verdaccio启动的话,第一次执行会成功。以后都会失败。如下图所示。
如果你输入pm2 logs打印出我这个错误就说明是verdaccio路径有问题。

 

 

正确的pm2 执行 verdaccio路径在node_global\node_modules\verdaccio\bin里面。如果直接执行verdaccio不用pm2托管的话可以用node_modules\verdaccio。

pm2 start node_global\node_modules\verdaccio\bin\verdaccio

 

 

这样就把我们的verrdacio放在后台执行了。
如果要停止这个服务

pm2 stop verdaccio //停止某个服务
pm2 stop all //停止所有服务
pm2 restart //重启服务

 

posted @ 2022-08-11 16:04  mrt_yy  阅读(612)  评论(0编辑  收藏  举报