搭建前端私有npm仓库
- 编辑时间: 2020-05-04 10:00:53
- 浏览量:
- 作者:
由于公司业务线的慢慢增加,不同团队依赖的公共东西也在慢慢增加。有时候更新一个sdk,得通知各方人员,并把对应更新好的sdk发送给他们。让他们添加在项目中,然后发布新版发布到线上。
鉴于这种方式越来越不适合团队之间的开发合作与维护,因此决定搭建私有npm服务来管理公共的一些包(公用库、组件、sdk)。
废话不多说,我们一起来看看。如何搭建一个私有的npm仓库 (以 sinopia为例)
1、安装sinopia (确保安装了nodejs)
npm install -g sinopia
2、安装完成,启动 sinopia
控制台输入 sinopia
启动成功,会看到如下图:
3、修改配置文件,添加对外访问
以mac为例 vim /Users/duanliang/.config/sinopia/config.yaml
检查是否有listen字段,如没有自己添加:
listen: 0.0.0.0:4873 (外网访问)
访问:http://127.0.0.1:4873,如下图所示。
4、客户端添加私有仓库
先安装nrm工具,用于切换和管理npm registry。
npm install -g nrm
添加sinopia地址
nrm add sinopia http://127.0.0.1:4873
切换到私有仓库
nrm use sinopia
检查是否切换成功,nrm ls (※为当前地址)如图
5、设置用户
一般为了安全考虑,会禁止客户端创建用户。所有我们会如下配置,还是编辑配置文件
vim /Users/duanliang/.config/sinopia/config.yaml
大约在12行找到auth,把max_user设置成-1。如下图
此时,配置文件已经修改完成,可能有些朋友会问。那我怎么注册用户呢?别急!
编辑htpasswd文件,从上图的路径来看跟config.yaml文件处在同级目录。那么我们打开来看下(以我的为例)
vim /Users/duanliang/.config/sinopia/htpasswd
你会发现是空的,没关系。我们先来看下,我事先添加好的一个记录。
duanliang:{SHA}ZAiB8m2POnvc02dHfMIJenjNVH0=:autocreated 2020-05-04T10:16:24.146Z
可能有人会问,看这么个记录我怎么知道怎么添加。别急,其实用户记录规则是:
zhan
写文章不易,如果您觉得文章对你有帮助。
打赏激励下作者吧,谢谢支持! ~(@^_^@)~!
微信打赏
支付宝打赏