aws
https://aws.amazon.com/ko/
로그인 후 ->
콘솔에 로그인 클릭 ->
IAM 검색 ->
좌측에 사용자 클릭
사용자 추가 ->
사용자 이름 입력, 액세스 유형 프로그래밍 방식 액세스 ->
AdministratorAccess 클릭->
무시 ->
사용자 만들기 ->
serverless 전역 설치 안했다면
$sudo npm i -g serverless
aws 시크릿키를 serverless에 설정해주자. ( aws의 sdk나 프로그래밍을 통해 aws 서비스를 사용할때는 aws iam 키를 요구하기 때문에 이 작업이 필요하다.)
$ serverless config credentials --provider aws --key 액세스키ID --secret 비밀액세스키
맥 기준으로
vi ~/.aws/credentials
다음과 같이 저장이 되어있습니다.
이미 serverless-http 를 통해 koa 앱을 serverless로 감쌌고,
serverless-offline을 통해 테스트까지 해봤으니
배포를 해봐야겠다.
serverless를 전역설치해놨기 때문에
프로젝트 디렉토리에서 다음과 같이 명령을 실행했으나 에러가 발생했다.
serverless deploy -c serverless.yml
에러코드를 바로 구글링했다. 다음 레퍼런스를 찾았다.
https://github.com/prisma-labs/serverless-plugin-typescript/issues/170
.build .serverless 디렉토리를 제거해줬다.
다시 serverless deploy -c serverless.yml
eslint-plugin-prettier/node_modules/.bin/prettier' 이게 왜 필요한지 모르겠다. node_modules에 가보니 실제로 패키지가 없었다.
일단은 설치를 해주고, .build, .serverless 디렉토리를 제거한 후에
다시 serverless deploy -c serverless.yml
그러나 똑같은 에러 발생...
이번엔 .build, .serverless 디렉토리 제거
node_modules 디렉토리도 제거 후에, npm install
다시 serverless deploy -c serverless.yml -v
다행히 배포가 되었습니다.
._serverless.ts 파일이 존재했음. 제거해버림.
하하하하하 에러는 paht 미스 타이핑에서부터 비롯됐다.
다시한번, 프로그래밍하면서 에러가 발생한다면! 꼭 에러를 읽자!