Docker (Apple Silicon/M1 Preview) MySQL“在清单列表条目中没有与 linux/arm64/v8 匹配的清单"

2021-12-07 00:00:00 docker mysql apple-silicon

我正在运行 Docker Apple Silicon Preview. 我创建了教程容器/图像,它运行良好.当我创建自定义 YAML 文件并运行 docker-compose 时,我在拉取 mysql 时出现以下错误:

I'm running the latest build of the Docker Apple Silicon Preview. I created the tutorial container/images and it works fine. When I went to create a custom YAML file and run docker-compose I get the following error when pulling mysql:

错误:清单列表条目中没有与 linux/arm64/v8 匹配的清单

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

这是我的 YAMl 文件中的一个片段:

Here is a snippet from my YAMl file:

version: '3'

services:
  # Database
  db:
    image: mysql-server:5.7
    volumes:
      - db_data:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: pass
      MYSQL_DATABASE: wp
      MYSQL_USER: wp
      MYSQL_PASSWORD: wp
    networks:
      - wpsite 

我试过 :latest 和 :8 都导致同样的错误.它可以很好地拉动 phpmyadmin 和 wordpress.

I've tried :latest and :8 which result in the same error. It pulls phpmyadmin and wordpress fine.

推荐答案

好吧,从技术上讲它不会解决您的问题(在 ARM 上运行 MySQL),但暂时您可以添加 platform到您的服务,如:

Well, technically it will not solve your issue (running MySQL on ARM), but for the time being, you could add platform to your service like:

services:
  db:
    platform: linux/x86_64
    image: mysql:5.7
    ...

或者,考虑使用 MariaDB,它应该可以作为替代品,例如这个:

Alternatively, consider using MariaDB, which should work as a drop-in replacement like e.g. this:

services:
  db:
    image: mariadb:10.5.8
    ...

使用 Docker 预览版在 M1 上这两种方法都对我有用

Both ways work for me on M1 with the Docker Preview

相关文章