Database 는 RDBMS를 이용합니다.
로그인 기능
상품 관리 기능
- 아래 상품 JSON 구조를 이용하여 데이터베이스 및 API를 개발해주세요.
- 구현
- 서비스 실행시 데이터베이스 또는 In Memory 상에 상품 최소한 5개를 미리 생성해주세요.
- 상품 조회는 하나 또는 전체목록을 조회할 수 있으며, 전체목록은 페이징 기능이 있습니다.
- 한 페이지 당 아이템 수는 5개 입니다.
- 사용자는 상품 조회만 가능합니다.
- 관리자는 상품 추가/수정/삭제를 할 수 있습니다.
- 상품 관리 API 개발시 적절한 Error Handling을 해주세요.
과제 필수 포함사항
이번 과제에서는 배포와 Readme 작성을 담당하게 되었습니다. 과제의 규모가 그리 크지 않은데 인원은 6명이니 담당하는 부분은 적어질 수 밖에 없었습니다.
원래 주로 배포하던 방식인 AWS(EC2 + RDS) 조합이 아닌 Docker로 배포하는 것을 이번 과제의 도전으로 삼았습니다. 결과부터 말하자면 Docker로 배포하는것은 실패했습니다..(시간 부족으로 계속 오류나는 Docker에 힘을 쏟기 보다는 기존방식으로 배포를 마무리 지었습니다.)
Docker로 배포하는 것은 처음이였기때문에 Docker-compose 파일 작성하는 법 부터 어려움을 겪었던 것 같습니다. 로컬환경에서 docker-compose가 잘 동작하는 것 까지 확인하고 EC2에 띄우니 manage.py도 못찾고.. 환경변수도 못찾고.. 못찾는게 한 두가지가 아니였..
제 욕심으로 밀고가기에는 시간적인 한계가 있었기때문에 결국에는 EC2+RDS 조합으로만 배포를 하게 되었습니다.
docker의 문제가 한두가지가 아니였는지...(?) 또 다른 문제가 있었는지 모르겠지만 이번에는 ubuntu접속에만 한나절이 걸리는.. 속터지는 상황도 발생했기때문에 새로 EC2컨테이너를 설정하고 어찌저찌 배포를 마무리 지었습니다.
이번 과제를 진행하면서 얻은 것은
다음 과제에서는 보다 잘 준비해서 꼭 docker로 배포하는 것을 성공시키고 싶습니다.