장고로 프로젝트를 개발하다 보면, 민감한 개인정보들이 소스코드에 포함이 되어서, 깃허브에 올리기 꺼려질 때가 있다.
그럴때 dotenv를 사용하여 민감한 정보들을 가린 상태로 개발을 하고 깃허브에 소스코드를 올릴 수 있다.
장고로 예를 들면 장고에 settings.py 에는 장고 시크릿 키가 있는데 이게 유출이 되면 나중에 배포를 했을때 위험할 수 있다.

참고로 Github에서는 친절하게 이런 정보가 커밋에 올라갔을 때, 메일로 경고해준다.
아래의 코드로 패키지를 설치한다.
pip install django-dotenv
다음은 manage.py에 해당 import 와 코드를 추가한다.
#manage.py
import dotenv
if __name__ == "__main__": # 아래의 코드 수정!
dotenv.read_dotenv() # 이 코드를 추가!
main()
다음은 settings.py 에서 시크릿키를 가려보겠다.
#settings.py
import os
SECRET_KEY = os.environ.get("SECRET_KEY")
다음은 manage.py와 같은 루트에 .env 파일을 생성해주고 다음과 같이 시크릿 키를 넣어주면 끝!
# .env
SECRET_KEY = "{나의 SECRET_KEY!!}"
'TTL > 13주차 ~ 16주차 TIL (11.21 ~ 12.16)' 카테고리의 다른 글
| 2022-11-25 TIL (DRF pagination) (0) | 2022.11.29 |
|---|---|
| 2022-11-28 TIL (프로젝트 KPT 회고록) (0) | 2022.11.29 |
| 2022-11-24 TIL (Web Server란? Application Server란?) (0) | 2022.11.25 |
| 2022-11-23 TIL ([DRF] serializer를 통한 유효성 검사 및 저장) (0) | 2022.11.24 |
| 2022-11-21 TIL (gunicorn, nginx) (0) | 2022.11.21 |