Docker를 multistage-build로 올리면 러너에는 오브젝트 파일만 있다보니, godotenv 등 환경변수 파일에 직접 접근하는 모듈을 사용할 시 오류가 난다. 이를 해결하기 위해 로컬에서는 direnv로 환경변수를 관리하고 러너에는 docker compose로 환경변수를 넘겨주면 된다.
brew install direnv
mkdir ~/.config/direnv && touch ~/.config/direnv/direnv.toml
[global]
load_dotenv = true
exec $SHELL

services:
app:
container_name: witb_b
build: .
ports:
- "8989:4000"
env_file:
- .env