cnpmjs.org部署私有npm源

项目

cnpm/cnpmjs.org

Docker部署方式:

  1. 创建配置文件
mkdir /root/.cnpmjs.org
vim /root/.cnpmjs.org/config.json

config.json

{
  "bindingHost": "0.0.0.0",
  "scopes": [
    "@company"
  ],
  "registryHost": "192.168.16.25:7001"
}
  1. 使用Docker启动
    这里supermp/cnpmjs.org是第三方镜像,也可以自己制作。
docker pull supermp/cnpmjs.org
docker run -d --name cnpmjs.org -v /root/.cnpmjs.org/:/root/.cnpmjs.org/ -p 7001:7001 -p 7002:7002 supermp/cnpmjs.org

配置详细说明

详见 /config/index.js

{
  "registryPort": 7001, // cnpmjs.org web 站点端口
  "webPort": 7002, // cnpmjs.org register 端口
  "bindingHost": "0.0.0.0", // 允许外部访问
  "handleSyncRegistry": "https://registry.npmjs.org", // 同步源
  "registryHost": "registry.npm.xxxxxx.work", // cnpmjs.org register 域名, 必须与实际使用地址一致
  "scopes": [
    "@xxxxxx" // 私有包 scope 名称。不附带此scope的包不能publish
  ],
  "enablePrivate": false, // 允许所有登录用户发布私有包;否则只允许管理员
  "syncModel": "none", // 不同步公共包
  "alwaysAuth": false, // 不强制每次请求时用户认证
  "customReadmeFile": "/root/.cnpmjs.org/docs/web/readme.md", // 自定义首页
  "userService": "/root/.cnpmjs.org/services/custom_user_service.js", // 自定义用户认证
  "admins": {
    "admin": "admin@xxxx.com" // cnpmjs.org 管理员
  },
  "database": { // 数据库;用于持久化数据,不写则用sqlite
    "db": "cnpmjs_test", // 数据库名称
    "username": "root", // 数据库用户名
    "password": "", // 数据库密码
    "dialect": "sqlite", // 数据库类型
    "host": "127.0.0.1", // 数据库 IP
    "port": 3306, // 数据库端口
    "storage": "/root/.cnpmjs.org/data.sqlite" // sqlite 数据库位置
  }
}

使用私有帐号系统

Use-Your-Own-User-Authorization

使用自定义主页

将自定义的.md主页放置在/root/.cnpmjs.org/中,并在config.json中配置。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,256评论 19 139
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,030评论 3 119
  • 文 艾米在渔村 望一湖秋水 写一首诗词 追一朵白云 凝一片枫叶 恋一朵花儿 听一粒鸟鸣 任沧海桑田 风云变幻 花...
    月影清韵阅读 2,482评论 58 114
  • 如果女人想获得一辈子的爱情,那她就会一败涂地。
    默幽1019阅读 255评论 0 0
  • 顶礼龙猛菩萨 顶礼上师三宝
    苏圆悦阅读 459评论 0 0