Build-time vs runtime
| 변수 종류 | 언제 read? |
|---|---|
NEXT_PUBLIC_* | Build time — bundle 에 박힘 |
| Server-only | Runtime — 매 request 에 read |
Docker 문제
Image 한 개 build 하고 staging + production 에 다른 setting 으로 deploy? NEXT_PUBLIC_* 값이 환경 사이로 못 변함 — 이미 박혔어. Environment 별 rebuild 하든가 runtime config 전략 (예: proxy 가 inject, 또는 server 에서만 read).
Loading 순서
- 이미 set 된
process.env .env.production.local/.env.development.local.env.local(test 에선 skip).env.production/.env.development.env