macOSでNODE_ENVをproduction/developmentに設定する方法
日本語解説:
macOSでJavaScriptやNode.jsの開発環境を設定する際、NODE_ENV
環境変数をproduction
またはdevelopment
に設定することは、アプリケーションの挙動を最適化するために重要です。
ターミナルを使用する方法:
- ターミナルを開く: macOSのターミナルアプリケーションを起動します。
- 環境変数を設定: 以下のコマンドを実行して、
NODE_ENV
を希望のモードに設定します。
export NODE_ENV=production # productionモードに設定
export NODE_ENV=development # developmentモードに設定
- 設定を確認: 設定が反映されていることを確認するために、次のように入力します。
echo $NODE_ENV
シェルスクリプトを使用する方法:
- シェルスクリプトを作成:
.zshrc
や.bashrc
などのシェルスクリプトを作成または編集します。 - 環境変数を設定: スクリプトに以下の行を追加します。
export NODE_ENV=production # productionモードに設定
export NODE_ENV=development # developmentモードに設定
- スクリプトを再読み込み: ターミナルで次のコマンドを実行して、スクリプトの変更を反映します。
source ~/.zshrc # または ~/.bashrc
Node.jsアプリケーション内で設定する方法:
- アプリケーションコード内に設定: アプリケーションの入口点(通常は
index.js
など)で、process.env.NODE_ENV
を設定します。
if (process.env.NODE_ENV !== 'production') {
// developmentモードの処理
} else {
// productionモードの処理
}
パッケージマネージャー(npm、yarn)を使用する方法:
- package.jsonファイル:
package.json
ファイルのscripts
セクションに、NODE_ENV
を設定するスクリプトを定義します。
{
"scripts": {
"start:dev": "NODE_ENV=development node index.js",
"start:prod": "NODE_ENV=production node index.js"
}
}
- スクリプトを実行: ターミナルで、以下のようにスクリプトを実行します。
npm run start:dev # developmentモード
npm run start:prod # productionモード
注意:
NODE_ENV
をproduction
モードに設定すると、アプリケーションは最適化され、パフォーマンスが向上します。NODE_ENV
をdevelopment
モードに設定すると、デバッグや開発作業が容易になります。- 一般的には、
NODE_ENV
はproduction
モードで本番環境にデプロイし、development
モードでローカル開発やテスト環境で使用します。
macOSでのNODE_ENV設定方法のコード例
ターミナルでの設定:
# productionモードに設定
export NODE_ENV=production
# developmentモードに設定
export NODE_ENV=development
シェルスクリプトでの設定:
# .zshrcまたは.bashrcファイルに追記
export NODE_ENV=production # または development
// index.jsなど
if (process.env.NODE_ENV !== 'production') {
// developmentモードの処理
console.log('Development mode');
} else {
// productionモードの処理
console.log('Production mode');
}
// package.jsonファイル
{
"scripts": {
"start:dev": "NODE_ENV=development node index.js",
"start:prod": "NODE_ENV=production node index.js"
}
}
実行方法:
npm run start:dev # developmentモード
npm run start:prod # productionモード
解説:
- ターミナルでの設定: 直接ターミナルで環境変数を設定します。
- シェルスクリプトでの設定: シェルスクリプトに設定を記述し、ターミナルでスクリプトを実行します。
- Node.jsアプリケーション内での設定: アプリケーションのコード内で
process.env.NODE_ENV
をチェックして、モードに応じた処理を行います。 - パッケージマネージャーでの設定:
package.json
ファイルのscripts
セクションにスクリプトを定義し、npmまたはyarnで実行します。
dotenvパッケージを使用する:
- dotenvパッケージのインストール:
npm install dotenv
またはyarn add dotenv
でdotenvパッケージをインストールします。 - .envファイルの作成: プロジェクトのルートディレクトリに
.env
ファイルを作成します。 - 環境変数を設定:
.env
ファイルに以下のように環境変数を設定します。
NODE_ENV=production # または development
- アプリケーション内で読み込む: アプリケーションのコード内で
dotenv
パッケージを読み込み、環境変数を取得します。
require('dotenv').config();
console.log(process.env.NODE_ENV);
- スクリプトの定義:
package.json
ファイルのscripts
セクションに、cross-envを使用して環境変数を設定するスクリプトを定義します。
{
"scripts": {
"start:dev": "cross-env NODE_ENV=development node index.js",
"start:prod": "cross-env NODE_ENV=production node index.js"
}
}
npm run start:dev # developmentモード
npm run start:prod # productionモード
環境変数マネージャーを使用する:
- 環境変数マネージャーのインストール: macOS用の環境変数マネージャー(例えば、LaunchControl、Keychain Access)をインストールします。
- dotenvパッケージ:
.env
ファイルを使用して環境変数を管理し、アプリケーション内で読み込むことができます。 - cross-envパッケージ: ターミナルで環境変数を設定し、スクリプトを実行する際に使用できます。
- 環境変数マネージャー: macOSのシステムレベルで環境変数を管理することができます。
javascript node.js macos