下面给出一个样例配置:
JavaScript
module.exports = {
enableCluster: true,
database: {
db: "snpm",
username: "username",
password: "password",
dialect: "mysql",
host: "127.0.0.1",
port: 3306
},
enablePrivate: false,
admins: {
xadillax: "i@2333.moe"
},
syncModel: "exist",
nfs: require('upyun-cnpm').create({
bucket: "your bucket",
oprator: "your id",
password: "your secret"
}),
scopes: [ '@cheniu', '@souche', '@souche-f2e' ],
badgeSubject: 'snpm',
privatePackages: [ 'snpm' ]
};
(译注:上面的配置包文件系统层用的是upyun-cnpm插件,需要在CNPM源码根目录执行)
$ npm install --save -d upyun-cnpm
这个时候你的package.json就有更改与源Repo不一致了,如果是Git克隆的用户在以后升级更新系统的时候稍稍注意一下可能的冲突即可。
下面给出几个官方的NFS插件:
upyun-cnpm:包本体存在又拍云的插件;
fs-cnpm:包本体存在本地的插件;
sfs-client:包本体存在SFS(Simple FIle Store)插件;
qn-cnpm:包本体存在七牛的插件;
oss-cnpm:包本体存在阿里云OSS的插件。
以后官方如果有一些新的插件进来,这里可能不会更新了,请自行去NFS Storage Wrappers获取最新的NFS插件们。
初始化数据库
如果你使用的是SQLite的话,数据库是自动就好了的,可以忽略该步。
其它数据库需要自行导入初始数据库结构。
初始数据库脚本在docs/db.sql里面,你可以用一些GUI工具将数据导入,也可以直接进入命令行导入。
比如你用的是MySQL,就可以在本机操作MySQL。
$ mysql -u yourname -p
mysql> use cnpmjs;
mysql> source docs/db.sql
启动服务
搞好配置之后就可以直接启动服务了。
简单启动
最简单的办法也是我现在正在用的方法就是直接用node执行一下入口文件就好了。
$ node dispatch.js
1
$ node dispatch.js
其实我是在tmux里面执行上面的指令的。
官方脚本启动
官方的其它一些指令,比如你可以用NPM的script来运行。
$ npm run start
1
$ npm run start
在CNPM里面,npm script还有下面几种指令
npm run dev:调试模式启动;
npm run test:跑测试;
npm run start:启动CNPM;
npm run status:查看CNPM启动状态;
npm run stop:停止CNPM。