将DocPad部署到Gandi.net简单主机

时间:2014-03-06 11:39:20

标签: node.js vhosts docpad

我正在尝试使用此服务将我的第一个DocPad网站部署到Gandi.net托管服务提供商: https://www.gandi.net/hebergement/simple?language=nodejs&grid=A

我的代码在这里: https://github.com/nylnook/nylnook-website
它在我的电脑上运行正常。

从技术上讲,它似乎是一个'vhost',在我使用之后,我应该写一个“server.js”文件来将生产中的DocPad部署到gandi服务器:

git push gandi master

('gandi'是他们服务器上的git远程仓库)
并且还使用了自定义命令(XXX而不是我的登录名):

ssh XXXXX@git.XXX.gpaas.net 'deploy default.git'

他们有一个Node.js实例的指南: http://wiki.gandi.net/en/simple/instance/nodejs?s[]=node 以及在其服务器上使用git的指南: http://wiki.gandi.net/en/simple/git

建议使用此代码: https://github.com/visionmedia/express/blob/master/examples/vhost/index.js

但我是node.js的新手,用DocPad学习,所以我无法想办法怎么做!

最后一个链接,到目前为止我所遵循的DocPad部署指南: http://docpad.org/docs/deploy

谢谢你的帮助!

编辑:另一个主角可能是:http://docpad.org/docs/api#using-with-express

1 个答案:

答案 0 :(得分:0)

回答我自己的文件: 你需要修改3个文件

server.js中的

(感谢plflannery:https://github.com/bevry/docpad/issues/819):

var spawn = require('child_process').spawn

var args = ['server'];
spawn('node_modules/.bin/docpad', args, {stdio:'inherit'}).on('close', function(err) {

if (err)
    console.log("docpad failed");
else
    console.log("docpad running");

});

在docpad.coffee中,放:

port: 8080

在docpadConfig函数中,将默认端口(9778)更改为 8080,根据Gandi的要求,解释如下: https://github.com/bobobo1618/docpad-docum ...

并在package.json中添加

"main": "server.js"

而不是

"main": "node_modules/docpad/bin/docpad-server"

因此,在通过Git进行部署时启动docpad并安装依赖项。

工作代码示例: https://github.com/nylnook/nylnook-website

祝你的项目好运!