@eredinBreaccGlas

Почему не выполняется docker-compose?

Всем привет. Пытаюсь запустить docker-compose, но при выполнении выпадает ошибка связанная с библиотекой mysql. На другой машине все запускается и работает как надо. Очень прошу помочь, может быть кто-то сталкивался с такой проблемой, загугленные способы решения мне не помогли.
Система: macOS Big Sur, Apple m1
Консоль:
docker-compose -f docker-compose-test.yml up -d
[+] Building 2.0s (3/3) FINISHED                                                
 => [internal] load build definition from Dockerfile                       0.0s
 => => transferring dockerfile: 51B                                        0.0s
 => [internal] load .dockerignore                                          0.0s
 => => transferring context: 2B                                            0.0s
 => ERROR [internal] load metadata for docker.io/library/mysql:5.7         1.9s
------
 > [internal] load metadata for docker.io/library/mysql:5.7:
------
failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to create LLB definition: no match for platform in manifest sha256:a682e3c78fc5bd941e9db080b4796c75f69a28a8cad65677c23f7a9f18ba21fa: not found
  • Вопрос задан
  • 5158 просмотров
Решения вопроса 1
dyuriev
@dyuriev
A posteriori
Система: macOS Big Sur, Apple m1

docker.io/library/mysql:5.7

Данный образ только под платформу amd64
У вас же arm64

Или используйте эмуляцию amd64:
services:
  db:
    platform: linux/x86_64
    image: mysql:5.7


или используйте mariadb вместо mysql
services:
  db:
    image: mariadb:10.5

Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@FullStackAlex
Веб-разработчик, электрик, кочевник
Пришлось сдать свой Macbook с intel x86-64 в ремонт на неделю и поэтому и повозится с М1 Macbook. Из всех контейнеров у меня тоже не стартовал лишь Mysql так как их default images не разработанны для ARM процессоров. Но с --platform linux/amd64 всё заработало:

services:
  db:
    platform: linux/amd64
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы