본문 바로가기
의지박약/DevOps

[Shell Script] .env 파일 읽어오기

by 병진들 2021. 9. 14.

docker-compose 스크립트에서 환경변수 파일(.env)을 따로 읽어오는 방법은 --env-file 명령어를 사용하는 것이다.

# 예시 (-d: background 실행)
docker-compose --env-file ${CURRENT_PATH}/.env up -d

이 명령어를 리눅스의 쉘 스크립트 내부에서 사용하고 환경변수 파일(.env)에 사용된 환경변수를 중복선언하지 않고 쉘 스크립트 내부에서 공유하는 방법이 필요했다.

하지만 app에서는 config.ini 파일을 쓰고 있어서 결론적으로는 두개를 사용하게 되버렸지만..ㅠㅠ

 

본론으로 돌아와서 쉘 스크립트에서 export 명령어를 사용하면 된다.

# Shell Script 읽어오기 테스트
while read line; 
do
    export $line
done < .env

이렇게 쉘 스크립트에 써주면 같은 디렉토리에 있는 .env 파일을 읽어와 해당 환경설정 변수들을 설정해준다.

 

쉘 스크립트 내부에서 사용하는 export 명령어는 지역(local)변수이기 때문에 부모 환경설정에 영향을 미치지 않는다.

따라서 마음대로 막 써줘도 된다..!

댓글