ノード スクリプトをサービスとしてプロビジョニングし、起動時に自動的に開始するために、forever-service を使用できます。次のコマンドは、必要なことを行います。
npm install -g forever-service
forever-service install test
これにより、現在のディレクトリに app.js が永久にサービスとしてプロビジョニングされます。システムが再起動されるたびに、サービスが自動的に再起動されます。また、停止すると、正常に停止しようとします。このスクリプトは、logrotate スクリプトもプロビジョニングします。
Github URL:https://github.com/zapty/forever-service
現在のところ、永久サービスは Amazon Linux、CentOS、他の Linux ディストリビューション、Mac および Windows の Redhat サポートをサポートしています..
注:私は forever-service の作成者です。
1 つの方法は、upstart ジョブを作成することです。そうすれば、Linux が読み込まれるとアプリが起動し、クラッシュした場合は自動的に再起動し、sudo start yourapp
で起動/停止/再起動できます。 / sudo stop yourapp
/ sudo restart yourapp
.
開始手順は次のとおりです:
1) upstart ユーティリティをインストールします (標準の Amazon Linux AMI を使用している場合は、事前にインストールされている場合があります):
sudo yum install upstart
Ubuntu の場合:
sudo apt-get install upstart
2) ノード アプリの upstart スクリプトを作成します。
/etc/init
で ファイル yourappname.conf
を追加 次のコード行:
#!upstart
description "your app name"
start on started mountall
stop on shutdown
# Automatically Respawn:
respawn
respawn limit 99 5
env NODE_ENV=development
# Warning: this runs node as root user, which is a security risk
# in many scenarios, but upstart-ing a process as a non-root user
# is outside the scope of this question
exec node /path_to_your_app/app.js >> /var/log/yourappname.log 2>&1
3) sudo start yourappname
までにアプリを起動します