サーバーにnodejsをデプロイして自動的に起動する方法

PHPz
リリース: 2023-05-18 09:32:37
オリジナル
975 人が閲覧しました

現在のクラウド コンピューティングと Web アプリケーション開発の時代では、サーバーの自動展開が避けられない問題になっています。 Node.js のデプロイメント方法は、効率的かつ高速なサーバー側フレームワークとしてさらに広く使用されています。この記事では、Node.js をサーバーにデプロイし、自動的に起動する方法を紹介します。

1. サーバー環境の準備

まず、Ubuntu システムサーバーを例として、Node.js がインストールされたサーバー環境が必要です。 Node.js がサーバーにインストールされていない場合は、次のコマンドを使用してインストールしてください: (この記事では例として Node.js バージョン 10 を使用します)

sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm
ログイン後にコピー

インストールが完了すると、Node を表示できます。次のコマンドを使用して .js バージョン:

node -v
ログイン後にコピー

2. プロジェクトの準備

Node.js をサーバーにデプロイする前に、プロジェクトを準備する必要があります。まず、プロジェクト ファイルをローカルからサーバーにコピーする必要があります。ここでは、scp コマンドを使用して、ローカル プロジェクト ファイルをサーバーにコピーします。プロジェクト ファイルがローカルの /home/user/project/ ディレクトリにあり、それをサーバーの /usr/local ディレクトリにコピーするとします。ローカルターミナルで次のコマンドを実行します。

scp -r /home/user/project/ username@server:/usr/local/
ログイン後にコピー

このうち、-r はすべてのファイルを再帰的にコピーすることを意味し、username はサーバーのユーザー名、server はサーバーの IP アドレスまたはホスト名です。

3. pm2 のインストール

プロジェクトの準備ができたら、Node.js プロセス pm2 を管理するツールをインストールする必要があります。 pm2には、プロセスの自動再起動、稼働状況の監視、複数プロセスの管理などの機能があり、プロジェクト内で管理が必要なプロセスが複数ある場合、pm2を使用することで管理がより簡単かつ明確になります。サーバー上で次のコマンドを実行して pm2 をインストールします:

npm install -g pm2
ログイン後にコピー

4. pm2 を自動的に起動するように設定します

pm2 がインストールされたら、pm2 の Ecosystem.config.js ファイルを作成する必要があります(プロジェクトのルートディレクトリに作成できます)、内容は次のとおりです:

module.exports = {
  apps : [{
    name        : 'app_name', //应用名称
    script      : 'app.js', //应用入口文件
    log_date_format: 'YYYY-MM-DD HH:mm:ss',
    error_file : '/var/log/app_name/err.log', //错误日志路径
    out_file   : '/var/log/app_name/out.log', //输出日志路径
    pid_file   : '/var/run/app_name.pid', //pid文件路径
    instances  : 2, //进程数
    autorestart: true, //自动重启
    watch      : true, //监听文件变化,自动重启
    max_memory_restart: '1G', //最大内存限制达到指定值后,自动重启
    env: {
      NODE_ENV: 'production' //环境变量
    },
  }],
};
ログイン後にコピー

このうち、アプリケーション名、アプリケーションエントリファイルなどは、実際の状況に応じて変更する必要があります。 。注: エラー ログ パス、出力ログ パス、および PID ファイル パスでは、関連するディレクトリがサーバー上に作成されていることを確認する必要があります。

さらに、次のコマンドを使用して pm2 の起動スクリプトを作成する必要もあります。

sudo pm2 startup systemd
ログイン後にコピー

上記のコマンドは、pm2 プロセスを自動的に保存およびガイドするスクリプトを実行します。設定ファイルは/etc/systemd/system/pm2.serviceです。上記コマンドを実行するとターミナルにテキストが出力されるので、これをコピーしてターミナルで実行するとpm2を自動起動する設定が完了します。

5. アプリケーションの起動

上記の手順が完了したら、次のコマンドを使用してアプリケーションを起動できます:

cd /usr/local/project_folder
pm2 start ecosystem.config.js
ログイン後にコピー

このうち、project_folder はプロジェクト フォルダーです。 , Economy.config .js は、作成したばかりの pm2 設定ファイルです。上記のコマンドを実行すると、ターミナルにアプリケーションの実行情報が出力されます。次のコマンドを使用してアプリケーションのプロセス情報を表示できます:

pm2 list
ログイン後にコピー

次のコマンドを使用してアプリケーションを再起動または停止することもできます:

pm2 restart app_name
pm2 stop app_name
ログイン後にコピー

最後に、上記の設定が完了すると、サーバーの再起動後に Node.js アプリケーションが自動的に起動され、pm2 を通じてアプリケーションの実行状況が監視されます。

この記事では、Node.jsをサーバーにデプロイして自動起動を実現する方法を紹介します。 pm2 を使用して Node.js プロセスを管理することにより、サーバー管理プロセスが大幅に簡素化され、アプリケーションの信頼性と安定性が向上します。

以上がサーバーにnodejsをデプロイして自動的に起動する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!