npm 可执行模块的开发&&私服发布

备注:
   大家日常在使用npm 安装依赖的时候有一些是命令行工具,比如vue-cli,具体的开发比较简单,同时
可以基于此开发一些脚手架,方便开发。
1. 项目初始化
npm init 
备注:按照提示书写即可,备注本次使用了npm 私服 (cnpm)所以name 需要按照cnpm scope 的定义,为了简单
我使用的是@cnpm
结果如下:
{
  "name": "@cnpm/mybin",
  "bin": {
    "rong": "bin/rong.js"
  },
  "version": "1.0.1",
  "dependencies": {}
}
rong.js:
#!/usr/bin/env node 
console.log("this is a demo app")
2. 说明
以上代码中 bin 的定义是比较重要的,说明这是一个可执行的模块,同时定义了执行的名称以及文件
可执行文件rong.js 中 #!/usr/bin/env node 也比较重要
后面就是具体的操作了,这个可以根据实际场景进行开发
3. 模块的发布
a. cnpm docker 安装
备注:使用淘宝的cnpm 具体安装比较简单,我使用的是docker进行安装的
大体步骤如下:
docker-compose build
备注: 注意需要进行修改 docs/dockerize/config.js
registryHost: 'ip:7001'
scopes: [ '@cnpm', '@cnpmtest', '@cnpm-test','@k8s-net' ],

b. 修改私服地址
npm config set registry http://ip:7001

c. 发布模块
 npm  login // 按照提示就可以了
 npm publish
4. 使用
npm install -g @cnpm/mybin or  yarn global add @cnpm/mybin
测试结果
rong
this is a demo app
5. 参考资料
https://npm.taobao.org/
https://github.com/cnpm/cnpmjs.org/wiki/Deploy-a-private-npm-registry-in-5-minutes

posted on 2017-12-27 18:41  荣锋亮  阅读(319)  评论(0编辑  收藏  举报

导航