본문 바로가기

기타

애플 맥북 실리콘 M1에서 도커 컨테이너 실행 시 오류

728x90

애플 맥북 실리콘 M1에서 도커 컨테이너 실행 시 오류

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

해당 오류는 이미지 플랫폼이 호스트 플랫폼과 일치하지 않을 때 발생합니다. 예를 들어, linux/amd64 플랫폼의 이미지를 linux/arm64/v8 플랫폼의 호스트에서 실행하려고 할 때 이 오류가 발생할 수 있습니다.

 

이 문제를 해결하기 위해 다음 중 하나를 시도할 수 있습니다.

 

1. 호스트 플랫폼과 일치하는 이미지 사용: 호스트의 플랫폼에 맞는 이미지를 사용해야 합니다. 예를 들어, linux/arm64/v8 플랫폼의 호스트에서 실행 중이라면, 해당 플랫폼에 맞는 이미지를 찾아야 합니다.

 

2. 특정 플랫폼 요청: docker run 명령을 실행할 때 -p 플래그를 사용하여 특정 플랫폼을 요청할 수 있습니다. 예를 들어, docker run --platform linux/amd64 명령을 사용하여 linux/amd64 플랫폼의 이미지를 실행할 수 있습니다.

 

3. QEMU 에뮬레이션 사용: QEMU를 사용하여 다른 플랫폼의 이미지를 에뮬레이션하고 실행할 수 있습니다. QEMU를 설치하고 사용하는 방법은 호스트 운영 체제와 Docker 버전에 따라 다를 수 있으므로, 해당 문서나 리소스를 참조하여 QEMU를 사용하여 다른 플랫폼의 이미지를 실행하는 방법을 확인하세요.

 

이러한 방법 중 하나를 사용하여 이미지 플랫폼과 호스트 플랫폼을 일치시키면 해당 오류를 해결할 수 있습니다.

도커 컨테이너 실행

docker run -it --rm --name centos7 anti1346/centos:7 bash
> docker run -it --rm --name centos7 anti1346/centos:7 bash
WARNING: The requested image's platform (linux/amd64) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
root@8d36d7760214:/$

플랫폼 지정 후 도커 컨테이너 실행

--platform linux/amd64 추가

docker run -it --rm --platform linux/amd64 --name centos7 anti1346/centos:7 bash
> docker run -it --rm --platform linux/amd64 --name centos7 anti1346/centos:7 bash
root@68e6807fbc7c:/$

 

728x90