App Runner 서비스 생성 시 실패
1. 무엇을 하고 싶으신가요?
App Runner 서비스 생성
2. 언제, 어떤 오류가 발생하시나요?
생성 중 애플리케이션 배포 실패
3. 어떤 시도를 해보셨나요?
도커 이미지 재생성 및 App Runner 서비스 재생성, App Runner 스펙업(cpu,mem), iam, root 계정에서 생성 시도(권한 문제는 아닌듯)
4. 작성한 코드를 공유해주세요.
이슈:
hands-on-fast-and-secure-cicd-pipeline 깃헙 클론 - 도커파일 경로에서 도커 이미지 생성 - ecr에 푸시 - ecr 이미지 url 이용하여 App Runner 서비스 생성 시 생성 실패하는 상황입니다.
의심 되었던 부분:
1. 컨테이너 이미지나 포트 설정에 문제가 있었다면 localhost:8080으로 접속해도 문제가 생겼을텐데 문제 없이 접속 가능하고요.
2. App Runner의 리소스 제한이 있었을까봐 cpu, mem을 스펙업하고 재생성 했는데도 상황은 동일합니다.
3. 계정 간 권한의 문제일까봐 iam, root 계정에서 생성해보았습니다. 상황은 동일합니다.
스샷:

에러 로그:
02-16-2024 06:37:27 PM [AppRunner] Deployment with ID : 7b4ba5a1c8f0433187d873df5bd1aa8c started. Triggering event : SERVICE_CREATE
02-16-2024 06:37:27 PM [AppRunner] Deployment Artifact: [Repo Type: ECR], [Image URL: 938923105461.dkr.ecr.us-east-1.amazonaws.com/chadtest], [Image Tag: latest]
02-16-2024 06:37:51 PM [AppRunner] Pulling image 938923105461.dkr.ecr.us-east-1.amazonaws.com/chadtest from ECR repository.
02-16-2024 06:37:54 PM [AppRunner] Successfully pulled your application image from ECR.
02-16-2024 06:38:05 PM [AppRunner] Provisioning instances and deploying image for publicly accessible service.
02-16-2024 06:38:15 PM [AppRunner] Performing health check on protocol TCP [Port: '8080'].
02-16-2024 06:39:06 PM [AppRunner] Your application stopped or failed to start. See logs for more information. Container exit code: 1
02-16-2024 06:39:28 PM [AppRunner] Deployment with ID : 7b4ba5a1c8f0433187d873df5bd1aa8c failed.
제가 겪은 이슈와 같은 상황을 겪고 있는 유저:
https://repost.aws/ko/questions/QU0lse8IEMSi-H4mlp5AAFWw/apprunner-failed-to-deploy
https://komodor.com/learn/exit-codes-in-containers-and-kubernetes-the-complete-guide/
이게 유력한 원인으로 보이는데요...
이게 아니라면 App Runner가 업데이트 되어 강의의 생성 내용과 달라져서 그런 것 인지...
흠...
혹시 App Runner 부분이 정상적으로 진행되지 않는다면 이후 강의에 차질이 생길까요??
Answer 1
0
안녕하세요.
기본 값(제한시간 2초, 비정상 임계값 5요청, 간격 5초, 정상 임계값 1요청)으로 배포하셨다는 가정 하에 8080 포트 헬스체크가 실패한 것으로 보입니다.
제 환경에서 배포 성공했을 경우 아래와 같이 43초 정도 소요되는걸 확인했습니다.(매 경우 다를 수 있습니다.)
(내부 환경으로 인한 차이를 감안했을 때) 첨부해주신 이미지에서는 51초 정도 간격이 있는 것으로 보아 헬스체크를 수행하는 포트와 실제 어플리케이션 동작 포트가 다를 수 있을 것 같습니다.
정확한 원인을 파악하기 위해, 아래 정보도 제공해주시면 감사하겠습니다.
Python 코드
2. Dockerfile
3. 배포로그
4. 애플리케이션 로그
참고로 배포로그와 애플리케이션 로그는 "App Runner 이벤트 로그" 아래에 있습니다.
1
Python 코드

2. Dockerfile
도커 이미지 생성 및 로컬에서 확인



ecr에 도커 이미지 푸시

App Runner 서비스 생성

App Runner 서비스 생성 실패
3. 배포로그

4. 애플리케이션 로그

1
앗..! mac을 사용중이시군요.
1.9. ECR, AppRunner 소개 및 실습에 13:45 부분 보시면,
docker build ... --platform=linux/amd64위와 같이 platform 옵션을 통해 빌드를 진행합니다.
아마 사용중이신게 Mac의 M 시리즈일 것 같습니다. 해당 시리즈는 arm 기반의 운영체제이기 때문에 amd만 지원하는 AppRunner에서는 정상적으로 동작을 하지 않습니다.
참고로, 실무에서도 exec format error라는 문구를 보시면 높은 확률로 아키텍처가 달라서이니 참고 부탁드립니다.
--platform=linux/amd64옵션 추가하셔서 빌드하신 후에 다시 한 번 시도 부탁드리겠습니다!
Docker + Spring Boot CI/CD 방법
0
5
1
docker compose에 대해 질문드립니다.
0
14
1
패키지 구분에 대해 궁금한게 있습니다
0
11
1
iam 권한
0
15
1
수강기간 연장 가능하실까요?
0
21
2
강의 듣는 중인데,
0
24
1
36강 오탈자가 있는 거 같습니다.
0
21
2
node.js 설치 관련 질문 드립니다
0
22
1
Cursor 설정
0
26
1
맥북으로 RDP 연결 질문
0
29
2
라우팅 테이블 설정 중 궁금한게 있습니다.
0
34
1
수강 연장 가능하면 요청 드립니다.
0
29
2
JPA Repository 질문이 있습니다!
1
34
2
페이지네이션 처리를 쿼리에서 하는 방식 질문
1
36
1
cosign tlog 관련 409에러
1
72
2
gitleaks 시크릿 스캔의 기준에 대한 질문입니다.
1
72
2
gitlab-ci.yml과 CI/CD 파이프라인 까지 수강중입니다.
0
77
2
first before
1
84
1
Private Subnet과 Gitlab
0
238
2
AWS 역할에 대해서
1
351
1
강의 교안
1
277
1
DooD, DinD 또는 Kaniko 외 다른 방법은 없는걸까요?
2
481
1
Kaniko 의 한계 부분에 대한 질문
1
256
1
artifacts 에 대한 질문이 있습니다!
1
256
1




