このガイドでは、PM2とNginxをリバースプロキシとして使用して、単一のサーバーにNext.jsフロントエンドとNestJSバックエンドをデプロイする方法について説明します。Next.jsアプリケーションはポート3001で実行され、ルートパス経由でアクセスできます。一方、NestJSバックエンドはポート8000で実行され、'/api'経由でアクセスできます。PM2は両方のアプリケーションを管理し、スムーズな動作を保証します。Nginxはリバースプロキシとして機能し、URLパスに基づいて適切なポートにリクエストをルーティングします。バックエンドは、`pm2 start dist/main.js`を使用してデプロイされ、ポートは`src/main.ts`で指定されます。フロントエンドは、`package.json`内の`start`スクリプトを使用して`pm2 start npm -- start`でデプロイされます。Nginxの設定ファイルを作成して、'/'をポート3001に、'/api'をポート8000にリダイレクトします。シンボリックリンクを使用してNginxの設定を有効にします。最後に、`nginx -t`を使用して設定をテストし、`systemctl restart nginx`を使用してサーバーを再起動します。デプロイされたアプリケーションは、指定されたドメイン名を使用してアクセスできます。このセットアップは、相互接続されたフロントエンドとバックエンドアプリケーションのための堅牢で効率的なデプロイストラテジーを提供します。
dev.to
Deploy NestJS and NextJS application in same server using pm2 and Nginx
