AWS EB에 django app 배포하기

참고 : https://youtu.be/L5LDS0vhpZ8

Pasted Graphic.tiff

1. 루트 디렉토리에 .ebextensions/django.config 를 만든다.
내용은

container_commands:
01_migrate:
command: "python manage.py migrate"
02_collectstatic:
command: "python manage.py collectstatic --noinput"
03_createsu:
command: "python manage.py createsu"
leader_only: true
04_chmod_sqlite:
command: "chmod 666 db.sqlite3"
option_settings:
aws:elasticbeanstalk:container:python:
WSGIPath: mysite/wsgi.py

이다.

2. noti/management/commands/createsu.py 를 만든다.
Pasted Graphic 1.tiff

내용은

from django.core.management.base import BaseCommand
from django.contrib.auth.models import User
class Command(BaseCommand):
def handle(self, *args, **options):
if not User.objects.filter(username="admin").exists():
User.objects.create_superuser("admin","id@gmail.com","password")

이다. 이때 색칠한 두부분은 일치시킨다.

3.
Pasted Graphic_1.tiff
위의 부분을 압축시킨다. (이때 상위폴더인 mysite를 압축시키면 안되고 위의 클릭한 부분이 최상위 폴더가 되도록 압축한다.!)

4. EB에 위의 .zip파일을 등록하면 된다.