NestJSでdotenvを使う
NestJSのドキュメントに書かれてる。
1. @nestjs/config
をインストール
$ yarn add @nestjs/config
2. app.module.ts
でConfigModuleを読み込む
import { Module } from '@nestjs/common';
import { ConfigModule } from '@nestjs/config';
@Module({
imports: [ConfigModule.forRoot()],
})
export class AppModule {}
.env
パスやファイル名を指定するには
ConfigModule.forRoot()
の引数にenvFilePath: パス
を指定する。
ConfigModule.forRoot({
envFilePath: 'foo/.env',
}),
以下のように配列で複数指定することも可能。先頭から1つずつ探しにいってくれる。
@Module({
imports: [ConfigModule.forRoot({
envFilePath: [
'.env.development',
'.env'
],
})],
})
↑ この場合.env.development
があればそれが環境変数として読み込まれる。なければ2つめの.env
が読まれる。