linux - 将node.js + expressjs应用程序的NODE_ENV设置为ubuntu下的守护进程

标签 linux node.js daemon express

我让守护进程按照这些说明正常工作: http://kevin.vanzonneveld.net/techblog/article/run_nodejs_as_a_service_on_ubuntu_karmic/

但是因为这会在开发模式下启动应用程序,所以日志文件中会包含 socket.io 调试日志的垃圾邮件。

我尝试在 upstart-conf-file 中将 NODE_ENV 设置为生产,但没有成功。

script
    export HOME="/root"
    export NODE_ENV=production

    exec /usr/local/bin/node /where/yourprogram.js >> /var/log/node.log 2>&1
end script

没用。

最佳答案

试试

exec NODE_ENV=production /usr/local/bin/node /where/yourprogram.js >> /var/log/node.log 2>&1

在我的设置中,我是作为小用户使用的,所以它是

exec sudo -u some-user NODE_ENV=production /usr/local/bin/node /where/yourprogram.js >> /var/log/node.log 2>&1

而且由于它产生了另一个用户,它可能有另一个环境。我是这里的新手,但它对我有用。

关于linux - 将node.js + expressjs应用程序的NODE_ENV设置为ubuntu下的守护进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7022742/

相关文章:

linux - sed - 批处理 'key=value' 替换

mysql - 确定 CentOS 6 Apache 服务器运行缓慢的问题

node.js - 使用异步和等待函数更新对象并推送到数组?

node.js - 是否可以在 "keen"对象中添加除标准属性之外的其他用户定义属性?

node.js - 为什么我的服务器上列出了多个 PM2 进程?

linux - linux内核中的系统调用

linux - Linux 设备驱动程序测试的工具或框架?

node.js - 错误 : EXDEV: cross-device link not permitted, 在 Ubuntu 16.04 LTS 上重命名 '/tmp/

docker - 在 master 上运行的 Kubernetes 应用程序 - DaemonSet

python - 为什么调用守护进程时 Python check_output() 不返回?