项目
Docker部署方式:
- 创建配置文件
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"
}
- 使用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中配置。
网友评论