node dotenvはpm2では動作しません 質問する

node dotenvはpm2では動作しません 質問する

.envローカル(pm2 なし)でファイル内のすべての環境変数が . を使用して正常に動作するアプリケーションがありますdotenv

しかし、アプリを実行するために使用しているサーバーではpm2、環境変数はそのまま残りますundefined

サーバー上でアプリを実行するために使用している pm2 コマンドは次のとおりです。

pm2 start myapp/app.js
pm2 startup
pm2 save

ベストアンサー1

dotenv.env現在のディレクトリにあるファイルを読み取ります。

呼び出してもpm2 start myapp/app.js検索されませんmyapp/.env

.env // It will try to load this, which doesn't exist
myapp/
   app.js

つまり、2つの解決策がある

オプションを使用path:

const path = require('path'); 
require('dotenv').config({ path: path.join(__dirname, '.env') });

または内部からスクリプトを呼び出すmyapp/

pm2 start app.js

おすすめ記事