部署npm私有库

Linux大区 1年前 (2022) 导航君
12 0 0

部署cnpm

安装依赖

yum install  gcc-c++ make  -y
yum remove nodejs   -y
curl -sL https://rpm.nodesource.com/setup_10.x | sudo -E bash -
yum clean all && yum makecache fast 
yum install nodejs   -y
npm install -g --build-from-source \
--registry=https://registry.npm.taobao.org \
--disturl=https://npm.taobao.org/mirrors/node \
cnpmjs.org cnpm sqlite3  --unsafe-perm --verbose

配置cnpmjs.org(不加用户认证)

nohup cnpmjs.org start &
cnpmjs.org stop
cat > //cfwww.d8wz.com/root/.cnpmjs.org/config.json <<EOF
{
  "webPort": 7002,
  "registryPort": 7001,
  "bindingHost": "0.0.0.0",
  "scopes": [
    "@company001"
  ],
  "officialNpmRegistry": "https://registry.npmjs.com",
  "officialNpmReplicate": "https://replicate.npmjs.com",
  "sourceNpmRegistry": "https://registry.npm.taobao.org",
  "sourceNpmRegistryIsCNpm": true,
  "syncByInstall": false,
  "syncModel": "none",
  "syncInterval": "30m",
  "syncDevDependencies": false,
  "registryHost": "192.168.4.240:7001",
  "enablePrivate": false,
  "admins": {
    "admin": "aemail@qq.com"
  },
  "database": {
    "db": "cnpmjs_test",
    "username": "root",
    "password": "",
    "dialect": "sqlite",
    "host": "127.0.0.1",
    "port": 3306,
    "storage": "/root/.cnpmjs.org/data.sqlite"
  }
}
EOF

配置说明:使用sqlite3,关闭自动同步淘宝npm源,不加用户认证,普通用户只能install和publish自己的库,admin有超级管理员权限

启动服务

nohup cnpmjs.org start &

客户端使用教程(不加用户认证)

  • 客户端环境 linux

  • 安装cnpm客户端

    npm install -g cnpm --registry=https://registry.npm.taobao.org
  • 指定私有scope登陆

    # cnpm login  --registry=http://192.168.4.240:7001 --scope=@company001
    Username: test
    Password: 123456
    Email: (this IS public) test@test.com
  • 创建私有npm库

    # cd /tmp
    # mkdir test && cd test
    # cnpm init
    name: (test) @company001/test  <== 回车回车生成json文件
    version: (1.0.0)   <== 回车回车生成json文件
    # cnpm publish 
  • 上传指定私有库(需要admin登陆)

    cnpm login  --registry=http://192.168.4.240:7001 
    Username: admin
    Password: 123456
    Email: (this IS public) test@test.com
    cd xxx
    cnpm pubish .  --registry=http://192.168.4.240:7001
  • 安装私有库

    cnpm install @company001/test  --registry=http://192.168.4.240:7001
  • 卸载指定库(需要登陆admin用户)

    cnpm unpublish @company001/test  --registry=http://192.168.4.240:7001  --force
版权声明:导航君 发表于 2022年6月20日 上午8:55。
转载请注明:部署npm私有库 | 第八网址导航

相关文章

暂无评论

暂无评论...