Node.js 性能平台为了方便开发使用,目前免费向大家提供了多租户模式的模块仓库,即客户可以通过注册账号使用的私有模块仓库,类似自己搭建服务器部署 cnpm,可以部署自己的私有模块(不影响其它公有模块的下载),但是后者需要额外的服务器成本,也无法完成更加精细化的权限控制。
为了方便理解,下文中的 registry 即指的是模块仓库。目前多租户模式的模块仓库处于公测阶段,欢迎大家使用并提出反馈意见。
注意:您的 npm 包中的 README 文件在服务端存储会有大小限制,建议 README 文件不要大于 32kb,否则会安装失败!
快速开始
创建 Registry
访问 Node.js 性能平台模块仓库主页,如果您尚未创建过 registry,那么可以点击页面右上角的 创建新 registry 来创建一个您的模块仓库,如下图所示:
创建成功后,左上角的按钮将会变为 创建新 scope,此时您的私有模块仓库已经创建完毕。
注意: 模块仓库的名字只允许包含 1~10 位数字和字母,一旦创建将不能修改,请谨慎操作!
登入 Registry
npm/cnpm 客户端指向您的私有模块仓库
Registry 创建后,将会在页面提供您仓库的地址,如下图所示:
使用图中提示的 npm/cnpm 命令将 npm/cnpm 客户端仓库指向您创建的私有模块仓库。
npm/cnpm 客户端登录
您需要使用 我的信息 这个 tab 页展示的用户名和密码来使用 npm login
命令进行登录操作,如下图所示:
这里的密码由服务端生成随机密码,请妥善管理。
创建 scope
Node.js 性能平台的 scope 含义与 cnpm/npm 中的 scope 含义一致,使用 @ 符号开始语义化名称命名,用来管理一类具有相似主题的私有模块。
点击模块仓库主页右上角的 创建新 scope 来创建一个新的 scope,如下图所示:
创建 scope 成功后,您就可以将您的私有模块发布至此 scope,例如这里创建了名字为 @cloud 的 scope,那么您可以执行 npm publish
命令将 @cloud/quickstart
这样名称的包到此 scope 下。
您可以根据需要创建多个 scope 来管理您的私有模块。
注意: scope 必须以 @ 开头,且只允许包含 1~10 位数字和小写字母,公测下每一个 scope 下目前限制发布 500 个模块,每一个私有模块包大小不允许超过 10M。
删除 scope
如果您创建了 scope,那么在模块仓库主页 scope 列表中可以看到 管理 按钮:
点击 管理 按钮后进入 scope 管理界面对 scope 进行删除操作。
注意: 删除 scope 后,scope 内所有发布的 npm 包将被一起删除,无法恢复,请谨慎操作!
多人协作
绝大部分情况下,您需要和团队中的其他/她人一起来维护私有模块,所以 Node.js 性能平台提供的多租户模式的模块仓库也支持多人协作开发。
邀请新成员
如果您创建了 scope,那么在模块仓库主页 scope 列表中可以看到 团队 按钮:
点击进入团队页面后,可以填写新成员的 aliyunid 来邀请新成员到此 scope 下:
这里解释下 Admin 选项:拥有 admin 权限的用户可以在这个 scope 下进行 publish/unpublish 模块的操作,没有 admin 权限的 normal 用户则只能在这个 scope 下进行下载操作
Admin/Normal 权限设置也可以在邀请完用户后进行更改:
新成员登入此 registry
邀请完毕后,被邀请的新成员访问 Node.js 性能平台模块仓库主页,点击 我加入的 scope,可以看到加入的 scope 列表:
同样的,首先执行 npm set registry 上图提供的 registry 地址
将 npm/cnpm 客户端指向加入的 scope 所属的 registry,然后使用导航栏提供的新成员自己的账户名密码进行 npm login
登录。
登录成功后,新成员即可根据自身的 Admin/Normal 权限对加入的 scope 下私有模块进行对应的操作。