AWS Beanstalk으로 배포를 하려고 했다.
AWS Beanstalk은 귀찮은 서버 설정을 자동으로 해주는 것이다. 하단에 첨부한 Githup repository에서 언어 구성 비율을 보자. 파이썬이 70%이고 나머지는 Shell 혹은 Powershell이다. 즉 aws beanstalk은 기본 환경 설정을 해주는 것이다.
기본 설정(default)로 파일이 올라가는 서버 instance는 EC2 micro instance이다. 여기에다가 konlpy, scikit-learn, pandas를 탑재한 프로젝트를 올리려고 했으니, 에러가 발생하는 것은 당연하다. 당장 scikit-learn 만하더라도 40MB가 필요한데, 이는 EC2 instance의 용량을 상회하는 것이다. 하단에 첨부한 이미지는 나와 비슷한 고난을 겪은 유저의 설명이다.
에러 로그는 다음과 같았다.
eb log에서 request last 100 lines를 할 수도 있었는데, 그건 스크린샷을 찍지 못했다. "MemoryError"가 찍혀있는 걸 봐서는, 아마 용량부족이 맞는 듯 하다.