Docker run 시
exec format error
이런 오류가 나는 것은 CPU 아키텍처가 맞지 않아 생기는 이슈입니다.
저같은 경우는 빌드를 Mac M1에서 했고, 그 이미지를 AMD64 기반 서버에서 실행하려 해서 발생했었습니다.
특정 플랫폼에 대해서만 빌드를 하려면
docker build -f Dockerfile --platform=linux/amd64 docker.io/seeho/test:0.0.1 .
이렇게 --platform 인자를 주어 적용할 수 있고,
https://github.com/docker/buildx 를 사용하면 멀티플랫폼 빌드를 한번에 할 수 있습니다.
폐쇄망에 설치할 이미지를 패키징하던 중 생긴 이슈입니다.
docker pull 을 할 경우, 보통 해당 플랫폼에 최적화된 이미지가 받아와집니다.
그 이미지를 docker save 명령어로 저장하면 추후 재활용할 때 아키텍처가 맞지 않을 수 있습니다.
이미지를 파일로 저장하여 반입해야할 때는 실제로 컨테이너가 돌아갈 서버의 환경을 최대한 맞추는 것이 중요합니다.
'Experience' 카테고리의 다른 글
| Proxmox 클러스터링 해제 / 재연결 (1) | 2025.07.27 |
|---|