結構前に Node における NODE_ENV と環境変数の設定方法について Slack で軽く議論したんだけど、その後色々と考えるものがあったのでここにまとめておく。 基本的にサーバサイドを前提とした話をするが、フロントエンドにも通じる話だと思うし、Next.js の話も出てくる。 NODE_ENV に development、production 以外が入るややこしさ Node のエコシステムでよく使われる環境変数として NODE_ENV がある。 様々なツールが NODE_ENV を見て、developmentであれば開発用のトレースやログを出してくれるし、production であれば本番用に最適化された処理を行ってくれる。 これはこれで便利なんだけど、環境 (ENV) という言葉に釣られて、デプロイ環境の名称を NODE_ENV に設定し始めると、途端にややこしくなることが多い。