🔧
Vite でビルドしたSSRサーバーを Node.js で実行時に環境変数を読み込む
ハマったのでメモ
結論
明示的にnodeのprocessをimportする。
例:環境変数に設定したPORTを読み込みたいとき
import process from 'node:process' // or from 'process'
const port = process.env.PORT // ex. 3000
ハマった
import.meta.env
Viteではimport.meta.envで環境変数が取れるが、ビルド時に展開されてしまう。今回はビルドしたコードを実行するときの環境変数が取りたいのでコレジャナイ。
process.env
nodeで環境変数を取得するといえばこれ。
こんな感じのコードを書いていると
console.log(process.env.PORT)
ビルドしたコードは次のようになる
var define_process_env_default = {};
console.log(define_process_env_default.PORT);
参考
おわりに
HonoX を node on Cloud Run で動かそうと試し中に遭遇。そっちもいろいろ固まったらzennにまとめたい。
Discussion