반응형
서버리스 프레임워크
- 클라우드 컴퓨팅 실행 모델
- AWS에 자동으로 배포해주는 배포 전용 프레임워크
서버리스 프레임워크 사용을 위한 nodejs 설치
- nodejs 검색 혹은 링크 클릭 : https://nodejs.org/ko/
- nodejs 다운로드 후 설치
서버리스 프레임워크 설치
- 커맨드 프롬프트 혹은 아나콘다 프롬프트에서 아래의 코드 실행
npm install -g serverless
배포 APP 생성
- 서버리스 홈페이지 접속
- 로그인
- create app
- 자신이 배포할 app 유형 선택 - python flask API
- 배포할 어플리케이션 이름 입력 -> 'create'
- 생성된 코드 복사
- 서버리스 템플릿 폴더를 생성할 경로에서 코드 실행
- 주의 : 명령 프롬프트에서는 다줄인식이 안되므로 한줄로 바꿔서 실행
- 테스트용이므로 Skip
- 실행한 디렉토리에 해당 app 폴더 생성 확인
파일 구조 확인하기
serverless.yml
- 어플리케이션의 정보가 담겨있는 파일
org: eunbyeol
app: aws-eb-recipe-server
service: aws-eb-recipe-server
frameworkVersion: '3'
custom:
wsgi:
app: app.app
provider:
name: aws
runtime: python3.8
functions:
api:
handler: wsgi_handler.handler
events:
- httpApi: '*'
plugins:
- serverless-wsgi
- serverless-python-requirements
requirements.txt
- 어플리케이션에서 사용되는 라이브러리를 정의해두는 파일
- 필요한 라이브러리와 버전 입력하면 AWS에서 자동 설치
- 버전을 모를 경우 공백, 자동으로 버전을 감지
Flask==1.1.4
Werkzeug==1.0.1
markupsafe==2.0.1
mysql-connector-python
flask-restful
로컬 테스트
- 로컬 테스트를 위한 app.py에 소스 코드 추가
# app.py 맨 밑에 아래의 소스 코드 추가
# 로컬에서 작동 테스트
if __name__ == '__main__' :
app.run()
- 실행 확인
python app.py
- POSTMAN에서 정상 작동 확인
배포를 위한 AWS 키 설정하는 방법
- 서버리스 홈페이지 로그인 -> org -> add
- next
- 자신의 AWS 이름과 키 입력
- 설정 확인
배포하기
- 배포할 어플리케이션 디렉토리 위치에서 아래의 코드 실행
serverless deploy
- 앱 작동 확인
- 배포 주소로 배포되있는지 확인
반응형