[AWS] Amplify 'GLIBC_2.27' not found 에러 대응

Ronie🌊·2023년 12월 19일

amplify에서 nextjs의 버전업을 하기위해
코드를 변경하고 deploy등을 했지만 amplify의 build에서 실패를 했다. node version이 부족하다고 처음 에러가 나왔고

You are using Node.js 16.19.0. For Next.js, Node.js version >= v18.17.0 is required.

node version을 amplify의 빌드 설정에서 변경하면 다른 에러가 나왔다.

Node version not available: 18.17.0

이 에러메세지는 amplify의 빌드 이미지에서 18.17.0 version을 지원하지 않는다는 의미였고 빌드 이미지를 변경해야한다는것을 확인했다.

아래의 참조에서 빌드 이미지를 'public.ecr.aws/docker/library/node:18.17.0'
로 설정해야한다고 해서 했지만 18.17.0의 버전은 지원하지 않았고(빌드 이미지가 애초에 18.17.0이면서 지원안되는 이슈는 대체;;) 다시 더 찾아보니 amazon linux:2023이라는 이미지로 하라고해서 했더니 먹혔다.

애초에 amplify에서의 큰 이슈였고
바로바로 node lts를 지원안해준다는것은 뭔가 꺼림직하기는 하다. amplify가 간단하지만 이런점에 있어서는 매우 불안하기는 하다.


(바로 또 에러)
빌드에서 copy repository만 행하고 backend랑 frontend는 그냥 넘어가면서 배포되어 버렸다.
그래서 겉으로는 정상인데 build가 제대로 안되고 그냥 넘어간것이다. 이유를 열심히 찾았는데 그냥 git과의 연결에 버그가 났다는 애매한 이유만 찾게되어서 결국 해당 branch를 삭제하고 다시 연결하였다.
(google선생님도 그냥 다시 연결하는게 낫다고 다들..)

그렇게 연결만 다시하고 설정을 그 전과 똑같이 맞춰줬더니 그냥 거짓말같이 빌드가 backend랑 frontend도 하게금 되었다.

근데 또 frontend에서 'Invalid next.config.js options detected'에러가 났는데 이건 또 뭔가했더니 이번에는
platform이 문제였다. 예전에 만든거라 아무튼 그때 만들었던 버전의 platform은 web dynamic으로 이 버전은 Next.js v13을 지원안한다고 한다. 그래서 web compute로 해야하는데 이게 또 그냥 console에서 수정해서 migrate은 안해준다. 예전 기록보면 버튼이 있던데 또 그건 없다. 허참
그래서 또 찾아보다가
aws cli amplify에서 어떻게 update-app을 발견
해봤는데 아주 깔끔히 수정됬다.

aws amplify update-app --app-id {앱아이디} --platform WEB_COMPUTE

아무튼 그랬더니 바로 수정되어서 다행..

amplify console이 생각보다 굉장히 쓸모가 없다. 역시 cli로 하는 습관을 들여야하나

. 참조
https://zenn.dev/cureapp/articles/amplify-hosting-troubleshooting#node.js-v18-%E3%81%AB%E3%81%97%E3%81%9F%E3%82%89-'glibc_2.27'-not-found-%E3%81%A8%E3%81%84%E3%81%86%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%8C%E5%87%BA%E3%81%9F

https://github.com/aws-amplify/amplify-hosting/issues/3773

https://docs.aws.amazon.com/ja_jp/amplify/latest/userguide/update-app-nextjs-version.html

0개의 댓글