使用sinopia搭建npm私有仓库

sinopia 的优点:

 

  1. 配置简单,对环境依赖少(仅 node 就够了)
  2. 支持 windows 系统下运行
  3. 不需要数据库,sinopia内置一个数据库了
  4. 是比较主流的方案

 

1.安装sinopia包

2.配置npm

3.启动sinopia,自动生成的工作目录如下

(通过第一个warn可以看到具体路径):

4.打开这个文件,config.yaml默认配置

如下图

5.打开浏览器地址 http://localhost:4873/

就可以看到如下内容

表示我们私有的库已经搭建好了

 

6.接下来我们就向库里面上传npm包

7.npm官网创建npm账户

npm网站地址:https://www.npmjs.com/

npm网站注册地址:https://www.npmjs.com/signup

 

8.命令行登录

 

9.验证登录是否成功

表示登录成功了。

 

10.创建npm库

11.按照提示输入相应内容

12.可以看到目录下增加了一个配置文件

 

13.查看配置文件

14.同级目录下新建index.js并编写内容

15.到这里我们一个简单的npm包就创建完成了,接下来我们来发布npm包

 

16.发布npm包

17.验证是否发布成功

换一个目录,下载我们刚刚发布的npm包

查看下载结果,下载成功

说明刚刚已经发布成功了

 

18.修改监听端口

监听端口默认没有,只能在本机访问,添加后可以通过外网访问。

19.团队使用

(1)安装nrm换源工具

npm install -g nrm 
(2)添加私有的NPM仓库镜像地址
nrm add name http://XX.XXX.XX.XX:4873
(3)查看镜像地址列表
 nrm ls 查看可用仓库
(4)使用本址的镜像地址

    nrm use name

(5)安装依赖

npm install 依赖名

例如:npm install chenna_npm

(6)依赖成功,本地成功安装依赖包

 

20. 版本更新

npm version <update_type> -m "<message>"

其中update_type 有三种:

patch增加一位补丁号(比如 1.1.1 -> 1.1.2)

minor增加一位小版本号(比如 1.1.1 -> 1.2.0)

major增加一位大版本号(比如 1.1.1 -> 2.0.0)

比如:

npm version patch -m "Version %s - v1.0.2"

最后提交更新的版本:

npm publish

21. 舍弃某个版本的模块

npm deprecate my-thing@"< 1.0.2" "critical bug fixed in v1.0.2"
 

22. 撤销自己发布的版本。

这只是一个测试的包,最好当然还是撤销下来

//删除要用force强制删除。超过24小时就不能删除了。自己把握好时间。

npm --force unpublish chenna_npm

23. 注意事项

a.发布的时候用国内镜像会报错,我们应使用默认的:

npm config set registry http://registry.npmjs.org 

b.npm包package.json中registory属性一定要填写,每次publish npm时package.json中version版本一定要大于上一次。

c.npm publish failed put 500  unexpected status code 401这样的报错信息,往往是没有登录成功,操作npm login

d.npm包的name是唯一的,如果有同名,发布时会报错

24.最后推荐一个网址

http://javascript.ruanyifeng.com/nodejs/npm.html#toc19

猜你喜欢

转载自blog.csdn.net/localhost_1314/article/details/85168862