目前已经有很多成熟的npm源,例如npm、cnpm、taobao等,一些公司出于稳定性、私密性和安全性等原因,会搭建公司的私有npm库。本小节介绍如何搭建私有npm仓库,它由两部分组成:
- 在腾讯云服务器上使用Verdaccio搭建npm私有仓库。
- 将代码包发布到私有仓库。
在腾讯云服务器上使用Verdaccio搭建npm私有仓库
Verdaccio(verdaccio.org/)是一个基于 Node.js 的、轻量级的私有npm源,因此使用它之前需在服务器上安装v12以更高版本的Node.js,命令如下:
yum install -y nodejs
Node.js安装完成后执行下面的命令安装Verdaccio:
css
npm i -g verdaccio
安装成功之后,在命令行中输入 verdaccio 便能启动服务,如果一切顺利将得到下面的信息:
启动服务之后,也许你想在浏览器上访问 Web 界面,这要修改 verdaccio 的配置文件。用 vim 打开配置找到文件中的 listen 字段,放开第 3 行和第 5 行注释,如下图:
修改配置重启 verdaccio 服务,可以发现服务运行到 4873 端口,为了外网能访问该端口,还需要给腾讯云服务器实例关联安全组,其内容如下图:
假如云服务器的公网IP为120.151.120.124,现在在浏览器访问 http://120.151.120.124:4873, 如果一切顺利便能得到的下图内容:
将代码包发布到私有仓库
到目前为止我们搭建好了npm私有库,接下来便是发布代码包,实现这个目的分为3步,它们都在你的本地电脑上执行。
安装并使用npm源管理工具
这里需要安装的npm源管理工具是nrm,代码如下:
css
npm i nrm -g
安装结束后使用 nrm 添加 http://120.151.120.124:4873 源,代码如下:
csharp
nrm add heyunpm http://120.151.120.124:4873
切换到新添加到npm源,代码如下:
perl
nrm use heyunpm
接下来所有的操作都针对新加的npm源而言。
创建用户并登录
执行下面的命令根据提示添加并登录用户
npm adduser
发布代码包
现在将一个名为 math-demo 的代码包发布到私有的npm库
npm publish
如果上述代码运行成功,刷新 http://120.151.120.124:4873 的web页面将得到下图: