direnv 설치: .envrc 기초, direnv allow, 환경 변수 자동 로드

direnv 설치 후 .envrc allow로 디렉터리별 env 자동 로드.

저마다 다른 API 키·DB URL·PATH가 필요한데 매번 .env를 source하기 귀찮을 때 direnv가 .envrc를 읽어 cd로 변수를 붙였다 뗍니다. macOS/Linux 설치, shell hook, .envrc 기초, direnv allow, 자동 load/unload를 hereink 독자용으로 정리합니다.

검색어: direnv 설치와 .envrc로 프로젝트 환경 변수 자동 로드. direnv 설치, 첫 .envrc, direnv allow, 디렉터리 진출입 시 변수 변화를 확인하면 됩니다.

설치brew · apt
설정.envrc · allow
동작cd in · out

direnv가 해결하는 것

디렉터리별 환경

전역 export 대신 cd에 맞춰 주입·해제.

.env 연동

dotenv_if_exists. 비밀은 git 제외.

공식: github.com/direnv/direnv, direnv.net. direnv version.

설치

  1. 1
    macOS

    brew install direnv.

  2. 2
    Linux

    sudo apt install direnv 등.

  3. 3
    hook

    eval "$(direnv hook zsh)" in ~/.zshrc.

  4. 4
    fish

    direnv hook fish | source.

.envrc 기초

export API_BASE=https://api.staging.example.com
PATH_add ./bin
dotenv_if_exists

allow

cd ~/projects/my-app
direnv allow
echo $API_BASE

자동 load/unload

cd ~/projects/my-app
cd ~
방식로드이탈
source .env수동유지
direnvcd해제
맞음
다중 repo, PATH 전환.
안 맞음
CI만이면 Dockerfile.
.envrc 수정 후 반영 안 됨?

direnv allow 또는 direnv reload.

mise와 충돌?

병행 가능. 각 도구 direnv 연동 참고.

Windows?

WSL에서 Linux 절차. PowerShell은 제한적.

환경 정리 후 한 장에

공간 만들기.

지금 시작