backend

serverless 사용해보기

seul chan 2019. 2. 15. 23:56

serverless github

medium blog

1. 설치하기

npm install -g serverless

2. AWS 세팅

  • IAM으로 유저 생성
  • AdministratorAccess 권한 부여
  • key / secret key 발급
  • 발급한 키를 serverless setting에 추가
serverless config credentials --provider aws --key xxxxxxxxxxxxxx --secret xxxxxxxxxxxxxx
# 기존에 aws credeital을 사용중이라면 -o 로 override 가능
# 만약 aws credential에 다른 프로필을 사용중이라면 --profile로 지정 가능

3. 서비스 만들기

기존의 템플릿으로 쉽게 만들 수 있다.

serverless create --template aws-python3 --path my-service
# serverless create -h 로 템플릿 목록 확인 가능

4. 서비스 수정

생성된

# serverless.yml 
service: my-service
provider:   
  name: aws   
  runtime: python3.7
functions:
  hello:
    handler: handler.hello
    events: # uncomment these lines
      - http:
          path: hello/get
          method: get

5. 배포

serverless deploy -v
# 테스트는 다음 명령어로 실행 가능
# serverless invoke -f hello -l

6. local serverless 구축

설치

npm init
npm install serverless-offline --save-dev

plugins 추가

# serverless.yml
service: serverless-example # NOTE: update this with your service name

provider:
  name: aws
  runtime: python3.7

functions:
  hello:
  handler: handler.hello
  events:
    - http:
      path: users/create
      method: get

plugins:
  - serverless-offline

offline 실행

serverless offline start

7. 모니터링

dashbird 서비스 이용 가능