CentOS:部署cpnm私有npm库

服务端搭建部署

服务端系统和软件:
  • CentOS:7.2 64位
  • Node:v10.13.0
  • Git
  • nrm
  1. 安装cpmjs
nrm use taobao
npm install -g cnpm
  1. 安装cnpmjs.org
git clone git://github.com/cnpm/cnpmjs.org.git /usr/local/cnpmjs.org
  1. 安装依赖
cd cnpmjs.org
npm install --build-from-source --registry=https://registry.npm.taobao.org --disturl=https://npm.taobao.org/mirrors/node
  1. 安装MySQL
  2. 配置MySQL
#登录MySQL
mysql -uroot -p
create database cnpmjs
use cnpmjs;
source /usr/local/cnpmjs.org/docs/db.sql
  1. 配置cnpmjs.org
vim /usr/local/cnpmjs.org/config/config.js

config.js内容:

module.exports = {
    debug: false,
    enableCluster: true, // enable cluster mode
    enablePrivate: true, // 只有管理员能发包
    database: { // 必须和mysql配置一致
		db: 'cnpmjs',
        host: 'localhost',
        port: 3306,
        username: 'root',
        password: 'mysqlpassword'  
    },
    admins: {
      yourname: 'youremail@yourhost.com',
    },
    syncModel: 'exist',// 'none', 'all', 'exist'
	enableAbbreviatedMetadata: true,//如果过程中遇到不能同步或者下载模块则设置为true
   	bindingHost: '192.168.999.999',//如果使用nginx反向代理则不需配置
   	registryHost: '192.168.999.999:7001',// registry url name(模块下载请求地址,必须设置)
};  
  1. 配置文件存储位置
    本地存储:
cd /usr/local/cnpmjs.org/
npm install --save fs-cnpm
vim /usr/local/cnpmjs.org/config/config.js

config.js增加配置:

    nfs: require('fs-cnpm')({
        dir: path.join(dataDir, 'nfs')
    }),

dataDir可配置为指定目录。
CDN存储:略

  1. 启动服务
#启动服务
npm run start
#查看服务状态
npm run status
#停止服务
npm run stop

客户端安装使用

客户端系统和软件:
  • macOS:10.13.6
  • Node:v10.13.0
  • Git
  • nrm
  1. 安装cnpmjs
nrm use taobao
npm install -g cnpm
  1. 配置私有仓库来源
nrm add yournpm http://192.168.999.999:7001

如果使用了nginx反向代理了服务端服务,则将这里配置的服务器地址改为代理到的地址和端口或域名网址。

  1. 配置管理员账号
#切换到私有仓库来源
nrm use yournpm
#添加管理员账号
npm adduser

接下来输入的账号信息中,Username和Email需要和服务端配置的admins中的一致。

4.发布和安装

#登录账号
npm login

接下来输入已经添加的管理员账号信息。

#发布私有包
npm publish --registry=http://192.168.999.999:7001
#安装私有包
npm install @mycompany/test -registry=http://192.168.999.999:7001
#同步私有包
npm sync @mycompany/test -registry=http://192.168.999.999:7001

创建快捷命令。

alias mynpm='cnpm --registry=http://registry.npm.example.com \
 --registryweb=http://npm.example.com \
 --userconfig=$HOME/.mynpmrc'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值