Computer Science/Troubleshooting

[Docker-compose, MySQL] M1 환경에서 MySQL 이미지 이용하기

_혀니 2022. 9. 1. 12:42
728x90
반응형

In particular, the mysql image is not available for ARM64. You can work around this issue by using a mariadb image.

 

이 오류는 컨테이너화 한 뒤 팀원분들에게 공유하면서 발생했던 오류였다. 

그렇다... Mac M1칩으로는 도커의 MySQL 이미지를 사용할 수 없다.

 

이미지를 Mariadb로 바꾸어야하나 고민도 했지만, 해결 방법은 의외로 간단하다.

 

docker-compose.yml

version: '3'

services:
  db:
    image: mysql:8.0.22
    container_name: my01
    command: mysqld --character-set-server=utf8 --collation-server=utf8_general_ci --default-authentication-plugin=mysql_native_password
    ports:
      - "3306:3306"
    volumes:
      - ./db/:/docker-entrypoint-initdb.d/
    environment: 
      MYSQL_ROOT_PASSWORD: "1234"
      MYSQL_DB: "testdb"
    platform: linux/x86_64
    healthcheck:
      test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
      interval: 1m30s
      timeout: 30s
      retries: 10
      start_period: 30s

작성했던 docker-compose 파일의 일부이다. db 컨테이너만 따로 빼왔다!

environment 아래를 보면, platform이 보인다.

 

platform: linux/x86_64

 

그렇다.. 이 줄 하나를 추가하면 해결할 수 있다!

 

Mac M1칩인 팀원분의 컴퓨터에서 이렇게 보인다고 하셨다.ㅎㅎ 맨 위가 mysql 이미지를 쓰는 컨테이너이다.

728x90
반응형