DRF를 이용해 서비스를 개발하기 위해서 관리해야 할 환경변수들을 Django Environ을 통해 관리할 수 있다.
특히 환경변수나 API키 등 외부로 유출되면 안되는 정보는 이를 통해 관리해야 한다.
설치
pip install django-environ
.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] Threepark' 카테고리의 다른 글
[Capstone Design] 3. 백엔드 구현 - (4) DRF 개발 | DB & MODEL (0) | 2024.05.21 |
---|---|
[Capstone Design] 3. 백엔드 구현 - (3) Django에 RDS 연결하기 (0) | 2024.05.14 |
[Capstone Design] 3. 백엔드 구현 - (1) Django Rest Framework 환경 설정 (0) | 2024.05.14 |
[Capstone Design] 2. 스토리지 서비스 (AWS S3) - (2) CORS, 버킷 정책, Public 설정 (0) | 2024.05.13 |
[Capstone Design] 2. 스토리지 서비스 (AWS S3) - (1) S3 Bucket 생성 (0) | 2024.05.13 |