.env 는 환경변수를 .env 파일(unicode 된 것 저장 가능)에 저장 및 로드하는 의존성 모듈로, 개발 과정 중 서버 주소, 고유 API KEY 값, id, pwd 등 필요한 정보들 저장한다.
용도에 따라 다음과 같이 분류 할 수 있다.
- .local.env : local 개발환경에서의 env
- .dev.env : demo 환경에 대한 env
- .prod.env. : production에 대한 env
아래 예제는 Django Project Key / AWS IP Key등을 셋팅하기 위에서 .env 파일을 만들어 활용한다.
📌 1. Django dot-env 패키지 설치
$ pip install django-dotenv
📌 2. .env 파일 작성
## Django Key
SECRET_KEY = '<your key>'
## AWS
AWS_ACCESS_KEY = "<aws key>"
AWS_SECRET_KEY = "<aws key>"
AWS_BUCKET_NAME = "<aws bucket name>"
REGION_NAME = "ap-northeast-2"
## DB
LOCAL_ENGINE = 'django.db.backends.postgresql'
LOCAL_NAME = '<db name>'
LOCAL_USER = '<db user>'
LOCAL_PASSWORD = '<db password>'
LOCAL_HOST ='127.0.0.1'
LOCAL_PORT ='5432'
📌 3. settings.py 작성
import dotenv
dotenv.read_dotenv()
DATABASES = {
'default': {
'ENGINE': os.environ.get("LOCAL_ENGINE"),
'NAME': os.environ.get("LOCAL_NAME"), # Schema Name
'USER': os.environ.get("LOCAL_USER"),
'PASSWORD': os.environ.get("LOCAL_PASSWORD"), # PASSWORD NAME
'HOST':os.environ.get("LOCAL_HOST"),
'PORT':os.environ.get("LOCAL_PORT"),
}
}
'Python > Django' 카테고리의 다른 글
[Django] Queryset 최적화 기법 (select, prefetch, F, Indexing 등) (0) | 2022.08.11 |
---|---|
[Django] ORM Queryset 특징 (0) | 2022.08.08 |
[Django] 채팅 시스템 (3) UUID가 포함된 URL을 Channels Websocket이 수신하는 법 (0) | 2022.07.22 |
[Django] Timezone 한국 시간으로 설정하기 (0) | 2022.07.17 |
[Django] 채팅 시스템 (2) 코드 구현하기 (with. FE, BE) (0) | 2022.07.15 |