VPSでNodeJsサーバーを継続的に実行しようとしましたが、systemd
サービスを作成して開始しました。
私のサーバーにまだ接続できません。状態を確認でき、正常に動作します。
サービスステータス:
Node.service - Runs the Node Server for Node API
Loaded: loaded (/etc/systemd/system/Node.service; disabled; vendor preset: enabled)
Active: active (running) since Sat 2018-05-12 16:16:38 CEST; 2min 37s ago
Main PID: 26697 (node)
Tasks: 10
Memory: 87.5M
CPU: 2.734s
CGroup: /system.slice/Node.service
└─26697 /root/.nvm/versions/node/v9.11.1/bin/node www
May 12 16:16:38 vps543107 systemd[1]: Started Runs the Node Server for Node API.
May 12 16:16:41 vps543107 node[26697]: Listening on port 3000
提供する:
[Unit]
Description=Runs the Node Server for Node API
Documentation="No Docs"
After=network.target
[Service]
Type=simple
User=root
WorkingDirectory=/root/Node/bin
ExecStart=/root/.nvm/versions/node/v9.11.1/bin/node www
Restart=on-failure
[Install]
WantedBy=multi-user.target
HTTP 要求でサーバーに接続できず、すべての要求がタイムアウトします。
私のサービスに問題がありますか?
ベストアンサー1
以下を試してください
[Unit]
Description="Runs the Node Server for Node API"
#Requires=After=mysql.service # If you have any dependency then add it
[Service]
ExecStart=/root/.nvm/versions/node/v9.11.1/bin/node /root/Node/bin/www
Restart=always
# Restart service after 10 seconds if node service crashes
RestartSec=10
# Output to syslog
StandardOutput=syslog
StandardError=syslog
#Change this to find app logs in /var/log/syslog
SyslogIdentifier=nodejs-api
# Followig will require if you are using the PORT or Node from Envirnoment
Environment=NODE_ENV=production PORT=3000
[Install]
WantedBy=multi-user.target
サーバーシステムが稼働していてサーバーにアクセスできない場合は、次のコマンドを使用して/var/log/syslogのログを確認して問題を解決できます。
sudo cat /var/log/syslog | grep -r "nodejs-api"
新兵:sudo systemctlをアクティブにするRocketChat