2012-05-29 268 views
22

我在一台Linux服务器上运行4个独立的Node.js应用程序,其中包含不同的端口和代理。在Linux服务器上如何部署node.js应用程序?

因为我(现在)是服务器中的唯一用户,所以放置应用程序以及如何运行应用程序并不重要。目前我的应用程序保留在我的主目录下(~/app1/~/app2/等)。

所以我的问题是:我应该在哪里放置应用程序,以便它们可以在多个用户之间共享?是否有类似于/var/www的标准地点?

+2

可能重复o部署node.js?](http://stackoverflow.com/questions/4681067/how-to-deploy-node-js) –

+1

没错,那个问题部分解决了我的问题。我将重申这个问题。 – jsalonen

+2

检查重新编辑的问题。 – jsalonen

回答

12

我使用https://github.com/visionmedia/deploy来部署我的应用程序。它将创建一个/var/www/productname目录。在那个目录里你有源码,当前和共享。共享目录有logpid文件。

我发现一个好的目录结构,这就是我用于我所有的项目。

+0

部署似乎非常好,谢谢!我很快就会试着看到它,并会回复给你。 – jsalonen

12

我在同一台服务器上运行Apache,除了Node.js,所以我不太喜欢在同一个目录下有Apache和Node.js的应用程序。我的Apache托管的应用程序进入传统的/ var/www /路径,并将我的Node.JS应用程序放在/ var/node /下。这是由于我在Apache(动态虚拟主机)和Node.JS中都设置了一些自动化功能。

在我的设置和自动化代理和Apache部署的更多信息可以在这里找到:How to use vhosts alongside node-http-proxy?

+0

非常好的建议,谢谢!稍后我会在一些自我实验之后回到这个问题。 – jsalonen

3

如果您正在使用AWS弹性豆堆栈的Linux服务器上的节点JS的应用程序,那么它应该有在/var/app/current/目录

2

继此答案的准则 - https://serverfault.com/a/96420 表明的/ opt /节点可能是这更好的地方,因为it'a包罗万象目录的保留用户添加的程序文件的[如何牛逼

+0

你是不是指/ opt? –

+0

对不起,/ opt/node,回答编辑 – chrismarx

+0

我认为正确的答案实际上是/ srv - https://unix.stackexchange.com/questions/35807/recommended-location-of-node-js-applications- in-linux-filesystem – chrismarx

相关问题