서버리스 Lambda에 My Probot 앱 배포

Probot 애플리케이션을 구축했지만 현재 웹훅을 테스트하기 위해 smee.io를 사용하고 있으며 로컬에서 애플리케이션을 실행하고 있습니다. 이제 내 앱이 프로덕션 준비가 되었으므로 람다에 배포하려고 합니다. 애플리케이션을 람다에 배포하는 데 사용할 수 있는 여러 플랫폼이 있지만 AWS에 가장 익숙하기 때문에 AWS를 선호합니다.

AWS Lambda는 Amazon Web Services의 일부로 Amazon에서 제공하는 이벤트 기반 서버리스 컴퓨팅 플랫폼입니다. AWS Lamba는 코드에 필요한 컴퓨팅 리소스를 추가로 관리하고 수신 이벤트와 함께 해당 리소스를 조정합니다.

다음은 Probot 앱을 Lambda에 배포하기 위해 취한 단계입니다.
  • AWS Console에 로그인하거나 계정을 만드십시오.
  • 실행 npm install @probot/adapter-aws-lambda-serverless . 이 npm 패키지는 Serverless Framework를 사용하여 AWS Lambda에서 Probot 애플리케이션 기능을 실행하기 위한 어댑터입니다.
  • 실행npm install serverless -g하여 Serverless Framework CLI와 상호 작용
  • 프로젝트 루트에 handler.js 파일을 만들고 파일에 아래 줄을 추가합니다.


  • 매개변수 저장소에서 앱 ID, 개인 키 및 웹훅 암호에 대한 값을 생성 및 저장합니다
  • .


  • 프로젝트 루트에 serverless.yml 파일을 만들고 다음 줄을 추가합니다. 사용 사례에 맞게 서비스 이름 및 런타임 값을 변경합니다. 웹훅 비밀, 앱 ID 및 개인 키에 대한 환경 변수는 여기에서 참조됩니다.


  • IAM 사용자를 생성합니다. 이 사용자에게 올바른 권한을 부여해야 합니다. 또한 자격 증명 유형에 대해 액세스 키 - 프로그래밍 방식 액세스를 선택합니다.


  • 사용자를 생성하면 AWS에서 액세스 키 ID와 보안 액세스 키를 생성합니다. 기억할 수 있는 장소에 해당 자격 증명을 저장하십시오.

  • 터미널에서 이 명령을 실행하여 받은 자격 증명으로 AWS 프로필을 구성합니다. 이것은guide AWS 자격 증명을 사용하는 대체 방법을 제공합니다.
    serverless config credentials \
      --provider aws \
      --key YourAWSKeyIdHere \
      --secret YourAWSSecretAccessKeyHere
    

  • 실행sls deploy . 이 명령은 CloudFormation을 통해 전체 서비스를 배포합니다. 다음과 유사한 POST URL 끝점을 반환합니다.
    https://[random alphanumeric string].execute-api.us-east-1.amazonaws.com/dev/api/github/webhook
    
  • 람다를 성공적으로 배포했는지 확인하십시오
  • .


  • 웹훅 URL과 홈페이지 URL을 람다의 끝점 URL로 업데이트하십시오
  • .



    이 단계를 따르면 앱을 로컬에서 실행하지 않고도 작동해야 하며 AWS CloudWatch에서 애플리케이션에 대한 로그를 읽을 수 있습니다.

    GitHub를 사용한 자동화에 대해 자세히 알고 싶으십니까? 더 많은 콘텐츠를 보려면 DEV에서 GitHub와 저( )를 팔로우하세요. 매일 포스팅하도록 노력하겠습니다!

    좋은 웹페이지 즐겨찾기