尝试使用Google Compute Engine提供的Ubuntu 15.04 VM中的systemd设置恶魔进程,以便在后台运行ghost博客平台。
到目前为止,我的服务脚本如下:
[Service]
ExecStart=/usr/bin/node /home/blog/index.js
Restart=always
StandardOutput=syslog
StandardError=syslog
RestartSec=120s
SyslogIdentifier=blog-service
User=user
Group=user
Environment=NODE_ENV=production PORT=5000
[Install]
WantedBy=multi-user.target
启动服务后,检查我得到的状态:
blog.service
Loaded: loaded (/etc/systemd/system/blog.service; enabled; vendor preset: enabled)
Active: activating (auto-restart) since Fri 2015-08-21 01:04:01 UTC; 42s ago
Process: 3455 ExecStart=/usr/bin/node /home/blog/index.js (code=exited, status=0/SUCCESS)
Main PID: 3455 (code=exited, status=0/SUCCESS)
我不明白为什么会得到(code = exited,status = 0 / SUCCESS),如果我手动运行节点index.js一切正常。如何让我的项目在后台正常运行?
答案 0 :(得分:1)
解决方案是在服务脚本上添加参数Type=forking
。看起来无法运行节点Web服务器,而无需向系统创建子进程。
答案 1 :(得分:0)
status = 0 / SUCCESS意味着一切顺利,检查服务是否正在运行?