Python 프로젝트를 개발하면서 테스트를 할 때, 각각의 환경에 맞게 설정값을 변경해야 할 때가 있습니다. 이를 위해 .env 파일을 사용하는 것은 매우 유용한 방법입니다. 이번 글에서는 python-dotenv
라이브러리를 사용하여 테스트 환경을 설정하는 방법에 대해 알아보겠습니다.
python-dotenv란?
python-dotenv
는 Python 프로젝트에서 .env 파일을 읽어서 환경변수로 설정해주는 라이브러리입니다. .env 파일은 키-값 쌍으로 구성되어 있는데, 이를 읽어와서 현재 실행 중인 프로세스의 환경변수로 설정합니다. 이를 통해 프로젝트의 설정값을 간편하게 변경하고 관리할 수 있습니다.
설치
먼저 python-dotenv
를 설치해야 합니다. pip를 사용하여 아래 명령을 실행해주세요.
pip install python-dotenv
사용법
-
프로젝트 루트에 .env 파일을 만듭니다. 이 파일은 설정값을 담고 있는 텍스트 파일입니다.
-
.env 파일에 설정할 값을 입력합니다. 예를 들어, 다음과 같이 DATABASE_URL 변수를 설정한다고 가정해봅시다.
DATABASE_URL=mysql://localhost:3306/mydatabase
- Python 코드에서
dotenv
라이브러리를 import 하고,load_dotenv()
함수를 호출하여 .env 파일의 값을 로드합니다. 이렇게 하면 .env 파일의 값이 환경변수로 설정됩니다.
from dotenv import load_dotenv
load_dotenv() # .env 파일의 값 로드
- 이제 환경변수를 사용하여 필요한 설정값을 가져올 수 있습니다.
import os
database_url = os.environ.get('DATABASE_URL')
print(database_url)
# 출력: mysql://localhost:3306/mydatabase
.env 파일 포맷
.env 파일은 각 줄마다 키=값
형태로 구성되어야 합니다. 주석은 #
으로 시작하며, 빈 줄은 무시됩니다.
# 주석 예시
KEY1=value1
KEY2=value2
환경 파일의 보안
.env 파일에는 주로 비밀번호, API 키 등의 민감한 정보가 포함될 수 있으므로 보안에 유의해야 합니다. .env 파일의 권한을 제한하고, 버전 관리 시스템에 포함시키지 않는 등의 보안 조치를 취하는 것이 좋습니다.
결론
python-dotenv
를 사용하면 프로젝트의 설정값을 간편하게 변경할 수 있습니다. .env 파일을 사용하여 테스트 환경을 설정하는 것은 매우 편리하며, 서로 다른 환경에서 사용하는 설정값들을 효율적으로 관리할 수 있습니다.