Lesson 20 / 34
Environment & Configuration
Load and validate environment variables per environment with @nestjs/config, ConfigService and schema validation.
ConfigModule setup
Use @nestjs/config to load and validate .env files automatically.
import { ConfigModule } from '@nestjs/config';
@Module({
imports: [
ConfigModule.forRoot({
isGlobal: true,
envFilePath: '.env'
})
]
})
export class AppModule {}Access & validate config
Inject ConfigService to read values; use Joi for schema validation.
import { ConfigService } from '@nestjs/config';
@Injectable()
export class AppService {
constructor(private config: ConfigService) {}
getPort() {
return this.config.get<number>('PORT') || 3000;
}
}