오늘은 django에서 .env파일로 환경변수를 관리하는 방법에 대해서 알아본다.
장고에서는 django-environ 라이브러리를 통해 손쉽게 환경변수의 관리가 가능하다.
env파일에 환경변수들을 저장해두고 로드하여 사용하는것이다
.env 생성
프로젝트의 루트에 .env 파일을 먼저 생성해준다.
생성 후에는 꼭 gitignore파일에 .env를 추가하여 깃허브에 올라가지 않도록 한다.
install django-environ
다음을 터미널에 입력하여 django-environ을 설치한다.
pip install django-environ
.env 작성
환경변수로 지정해야 하는값들을 env에 정의한다.
다음과 같이 작성해야 한다.
SECRET_KEY='django-insecure-...'
DEBUG=True
# MySQL DB
DB_NAME='localdb'
...
이때 주의할 점은 키와 값 사이에 띄어쓰기를 포함해서는 안된다는 것이다.
# 틀린 예시
DB_NAME = 'localdb'
# 올바른 예시
DB_NAME='localdb'
settings.py 작성
settings.py에 다음을 추가한다.
import environ
...
env = environ.Env(DEBUG=(bool, False))
environ.Env.read_env(os.path.join(BASE_DIR, '.env'))
...
# 이제는 환경변수가 들어갈 자리를 다음처럼 바꾸어 작성해준다.
SECRET_KEY = env('SECRET_KEY')
DEBUG = env('DEBUG')
...
migrate
settings.py작성을 마쳤다면 migrate를 진행한다.
python manage.py migrate
'Project > Team22' 카테고리의 다른 글
[Team22] DRF API 문서 - drf yasg (0) | 2024.03.11 |
---|---|
[Team 22] DRF - Mixins (0) | 2024.02.08 |
[Team 22] DRF - Generic API View (0) | 2024.02.08 |
[Team 22] DRF Authentication - dj-rest-auth (0) | 2024.02.08 |
[Team 22] Django REST framework (3) - Viewset (0) | 2024.02.03 |