我想在我的超级空间帐户上安装带有 mongodb 的pencilblue nodejs cms。我必须采取哪些步骤?
1 回答
由于我发现很难弄清楚如何去做,这就是我最终成功的方式。其中大部分与除了pencilblue 之外的nodeJS 安装相关。
首先,您需要在 uberspace.de 上创建一个帐户。
打开您的终端并使用 ssh 登录到您的 uberspace 控制台:
ssh {account}@{server}.uberspace.de
输入您在创建帐户时创建的密码。
创建服务目录:
uberspace-setup-svscan
创建 mongo 数据库:
uberspace-setup-mongodb
为数据库数据创建文件夹:
mkdir data
cd data
mkdir db
启动数据库:
mongod --dbpath data/db/
您将获得一些登录数据。我建议你在某处写下来:
Hostname: localhost
Portnum#: {dbPort}
Username: {account}_mongoadmin
Password: {dbPassword}
要通过 shell 连接到数据库,您可以使用:
mongo admin --port {dbPort} -u {account}_mongoadmin -p)
配置 npm:
cat > ~/.npmrc <<__EOF__
prefix = $HOME
umask = 077
__EOF__
安装pencilblue-cli:
npm install pencilblue-cli
更改为 html 文件夹并创建一个 .htaccess 文件(您也可以使用您的 ftp 客户端执行此操作):
RewriteEngine On
RewriteRule ^(.*) http://localhost:8080/$1 [P]
现在如果你想使用 github:在 github 上创建一个新的存储库。
打开一个新的终端窗口并在您机器上的本地文件夹中克隆pencilblue cms:
git clone git@github.com:pencilblue/pencilblue.git pencilblue
cd pencilblue
git remote set-url origin git@github.com:{yourGitName}/{yourRepoName}.git
git add .
git commit -m "Initial commit."
在 uberspace 上设置 ssh:返回您的 uberspace 控制台。
ssh-keygen -t rsa -b 4096 -C "{yourEmailAddress}"
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub
复制打印出来的整个密钥并将其粘贴到 github 中的 settings/SSH 密钥下。
在 uberspace 控制台中克隆新的 repo:
git clone git@github.com:{yourGitName}/{yourRepoName}.git cms
cd cms
使用 vim config.js 创建一个 config.js 或使用 ftp 上传:
module.exports = {
"siteName": "{yourSiteName}",
"siteRoot": "http://{account}.{server}.uberspace.de/",
"sitePort": {
8080
},
"logging": {
"level": "info"
},
"db": {
"type": "mongo",
"servers": [
"mongodb://{account}_mongoadmin:{dbPassword}@127.0.0.1:{dbPort}/"
],
"name": "admin",
"writeConcern": 1
},
"cache": {
"fake": false,
"host": "localhost",
"port": 6379
},
"settings": {
"use_memory": false,
"use_cache": false
},
"templates": {
"use_memory": true,
"use_cache": false
},
"plugins": {
"caching": {
"use_memory": false,
"use_cache": false
}
},
"registry": {
"type": "mongo"
},
"session": {
"storage": "mongo"
},
"media": {
"provider": "mongo",
"max_upload_size": 6291456
},
"cluster": {
"workers": 1,
"self_managed": true
},
"siteIP": "0.0.0.0"
};
安装 node_modules:
npm install
创建一个启动服务器的服务:
uberspace-setup-service pbservice node ~/cms/pencilblue.js
启动服务:
svc -u ~/service/pbservice
现在您可以访问 http://{account}.{server}.uberspace.de 上的页面
(要启动服务(提示:u = up):
svc -u ~/service/pbservice
停止服务(提示:d = down):
svc -d ~/service/pbservice
重新加载服务(提示:h = HUP):
svc -h ~/service/pbservice
重启服务(提示:du = down, up):
svc -du ~/service/pbservice
要删除服务:
cd ~/service/pbservice
rm ~/service/pbservice
svc -dx . log
rm -rf ~/etc/run-pbservice)