본문 바로가기
StackOver Flow

no matching manifest for linux/arm64/v8 in the manifest list entries (docker-compose up)

by RunAndrew 2022. 6. 30.

ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries

해당 이슈와 관련된 해결방법에 대해서 알아보겠습니다.

1. 상황

다음과 같이 mysql를 띄우는 docker-compose.yml 파일을 만들고, docker-compose up 명령어를 실행합니다.

docker-compose.yml

version: "3"
services:
  db:
    image: mysql:latest
    container_name: mysql-server
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: root123
    command: # 명령어 실행
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_unicode_ci
    volumes:
      - ./data/:/var/lib/mysql # -v 옵션 (다렉토리 마운트 설정)

다음과 같은에러를 만납니다.

ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries

2. 해결방법

필자는 M1맥북이라서 linux/arm64/v8 플랫폼을 따로 지정해줍니다.

version: "3"
services:
  db:
    platform: linux/x86_64 # <=== 해당 부분을 추가합니다.
    image: mysql:latest
    container_name: mysql-server
    ports:
      - "3306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: root123
    command: # 명령어 실행
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_unicode_ci
    volumes:
      - ./data/:/var/lib/mysql # -v 옵션 (다렉토리 마운트 설정)

다시 docker-compose up 명령어를 통해서 실행하면 잘 해결됩니다.