본문 바로가기
Back-End/Server

[Docker][aws] WARNING: The requested image's platform (linux/arm64/v8) does not match the detected host platform (linux/amd64) and no specific platform was requested 에러 해결

by 흐암졸령 2022. 12. 7.
반응형

문제 상황

 spring boot 프로젝트를 도커 이미지로 만들고 docker hub 에 올렸다. 그리고 배포를 위해서 ec2 인스턴스의 리눅스 서버에서 이미지를 pull 받아서 실행하려 하는데 다음과 같은 오류가 나왔다.

WARNING: The requested image's platform (linux/arm64/v8) does not match the detected host platform (linux/amd64) and no specific platform was requested

 

문제 원인

 지금 쓰고 있는 노트북이 애플 M1 air 인데 도커를 빌드할 때 생성된 플랫폼이 ec2 인스턴스와 달라서 생긴 문제였다. 따라서 빌프 플랫폼을 맞추어서 빌드를 해준 뒤에 dockerhub 에 올리면 문제가 해결될 것이다.

 

해결 방법

 원래 빌드를 할 때 다음과 같은 명령어를 사용하였다.

docker build -t 도커허브아이디/도커허브 Repository 명 .

 

이 커맨드로 빌드를 하게되면 디폴트 빌드 플랫폼으로 빌드를 하게되는 것이고, ec2 인스턴스에서 돌아가기 위해서는 다음 옵션을 추가해 주어야 한다.

--platform linux/amd64

따라서 다음과 같은 명령어를 사용하여 빌드를 하면 문제가 해결된다.

docker build --platform amd64 -t 도커허브아이디/도커허브 Repository 명 .

 

참고 문헌

 

Docker on Mac M1 gives: "The requested image's platform (linux/amd64) does not match the detected host platform"

I want to run a docker container for Ganache on my MacBook M1, but get the following error: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) a...

stackoverflow.com

 

반응형

댓글