0

SSHセッションが終了したときにサービスを実行し続けるために、現在nohupで実行されているSails jsアプリケーションをサーバー上で動作させることができました。

明らかに、これは非常に堅牢なソリューションではありません。アプリがクラッシュしたり、サーバーがリセットされたりするとどうなりますか? 私はFedoraを使っているのでsystemdを使っています。

これが私がこれまでに持っているものです。

ExecStart=/usr/bin/node /home/dashboard-app/app.js
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=dashboard-app
User=***
Group=***
Environment=NODE_ENV=production

[Install]
WantedBy=multi-user.target

サービスは正常に開始されますが、スクリプトは構成ファイルを認識しないため、Sails のポート 1337 がデフォルトになります。サーバーのそのポートに移動しても機能しません。

また、帆の設定ファイルで設定されたポートを使用してnginxを設定しましたが、これは正常に機能しますが、これが違いを生むとは思いません。

4

1 に答える 1

0

WorkingDirectory=どこにいても、Node アプリの最上位ディレクトリに設定する必要があります。

例えば:

[Service]
WorkingDirectory=/home/dashboard-app

またはグローバルにインストールされたアプリの場合、

[Service]
WorkingDirectory=/usr/lib/node_modules/dashboard-app
于 2015-06-09T00:47:09.957 に答える