1. rds 연동
rds 인스턴스를 생성하고
settings.py에 db 설정을 해준다.
1
2
3
4
5
6
7
8
9
10
|
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': 'che1-db.czxnimwgemge.ap-northeast-2.rds.amazonaws.com',
'PORT': '3306',
'NAME': 'django_rds',
'USER': 'admin',
'PASSWORD': '*******',
}
}
|
cs |
그리고 migration을 하자
python3 manage.py migrate
만약 오류가 뜨면
pip3 install MysqlClient 를 하자
만약 MysqlClient 설치중 오류가 나타날 때
egg_info 관련 :sudo apt-get install libmysqlclient-dev 를 하자
그럼 끝!
s3 관련해서
2. s3 생성 및 설정
참조
먼저 admin 권한을 가지고 있는 계정이 s3 버킷을 하나 만든다. 그리고
버킷을 퍼블릭으로 설정하기 위해 퍼블릭 차단에 관한 설정을 다 체크 해제해 준다.
그리고 시험삼아 파일을 하나 업로드 하고 그 파일을 '퍼블릭으로 설정' 해준다.
버킷 정책을 생성하자, 이 때 모르겠으면 정책 예제에서 대충 선택하고 "Action":"s3:*" 로 해버리자
그리고 밑의 cors 설정을 하자
1
2
3
4
5
6
7
8
9
10
|
<?xml version="1.0" encoding="UTF-8"?>
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedOrigin>*</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedHeader>*</AllowedHeader>
<MaxAgeSeconds>5000</MaxAgeSeconds>
<ExposeHeader>ETag</ExposeHeader>
</CORSRule>
</CORSConfiguration>
|
cs |
ExposeHeader 는 사용자가 접근가능한 Amazon S3 반환 응답헤더를 지정하는 항목이다.
3. python 으로 s3 연결
python에서 aws 에 접근 가능한 boto3를 설치하자
pip3 install boto3
커스텀 스토리지 패캐지 django-storages 도 설치하자
django-storages 는 설치후 INSTALLED_APPS={ 'storages', } 와 같이 등록을 해줘야 한다.
4.추가 설정
그 후 settings에서 다음의 내용을 추가해 보자
1
2
3
4
5
6
7
|
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
AWS_S3_SECURE_URLS = False # use http instead of https
AWS_QUERYSTRING_AUTH = False # don't add complex authentication-related query parameters for requests
AWS_S3_ACCESS_KEY_ID = '{엑세스 키 ID}'
AWS_S3_SECRET_ACCESS_KEY = '{비밀 엑세스 키}'
AWS_STORAGE_BUCKET_NAME = '{bucket_name}'
|
cs |
'웹 > Django' 카테고리의 다른 글
aws에 배포하기 -3 배포 자동화 (0) | 2021.06.16 |
---|---|
aws 에 배포하기 (0) | 2021.06.14 |
Django 5. 클래스 뷰 (0) | 2021.05.13 |
Django 3. 화면이동과 view 와 template간의 폼 처리 (0) | 2021.05.13 |
Django 2. 프로젝트 뼈대 만들기 (0) | 2021.05.10 |