소개
Django 프로젝트를 개발하다보면 환경 변수 설정이 필요한 경우가 많습니다. 이러한 환경 변수를 손쉽게 관리하기 위해 python-dotenv 라이브러리를 사용할 수 있습니다. python-dotenv는 .env 파일에 정의된 환경 변수를 읽어와서 Django 프로젝트에서 사용할 수 있도록 도와줍니다.
python-dotenv 설치하기
먼저, python-dotenv를 설치해야 합니다. 아래의 명령어를 터미널에서 실행하여 라이브러리를 설치할 수 있습니다.
pip install python-dotenv
.env 파일 생성하기
Django 프로젝트의 루트 디렉토리에 .env 파일을 생성합니다. 이 파일에는 환경 변수를 저장할 수 있으며, 환경 변수는 다음과 같이 KEY=VALUE
형식으로 작성합니다. 예를 들어, 데이터베이스 연결 정보를 환경 변수로 설정하고 싶다면 다음과 같이 작성할 수 있습니다.
DB_NAME=mydatabase
DB_USER=myusername
DB_PASSWORD=mypassword
settings.py 파일에 dotenv 추가하기
Django 프로젝트의 settings.py 파일에 python-dotenv를 추가하여 .env 파일에서 환경 변수를 로드하도록 설정합니다. 아래의 코드를 settings.py 파일 상단에 추가합니다.
import dotenv
dotenv.load_dotenv()
위의 코드는 .env 파일을 로드하고 환경 변수를 현재 환경과 매핑합니다.
환경 변수 사용하기
이제 .env 파일에서 정의한 환경 변수를 Django 프로젝트에서 사용할 수 있습니다. 예를 들어, 데이터베이스 연결 정보를 활용하려면 다음과 같이 작성할 수 있습니다.
import os
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': os.getenv('DB_NAME'),
'USER': os.getenv('DB_USER'),
'PASSWORD': os.getenv('DB_PASSWORD'),
'HOST': 'localhost',
'PORT': '',
}
}
위의 코드에서 .getenv('DB_NAME')
을 통해 .env 파일에서 정의한 DB_NAME 환경 변수의 값을 가져옵니다.
결론
python-dotenv를 사용하면 Django 프로젝트에서 환경 변수를 손쉽게 관리할 수 있습니다. .env 파일을 생성하고, settings.py 파일에서 python-dotenv를 로드하고, 환경 변수를 사용하여 설정값을 가져오는 방법에 대해 알아보았습니다. 이제 환경 변수를 사용하여 프로젝트를 더 유연하고 관리하기 쉽게 개발할 수 있습니다.