我只能使用 docker preview 在我的 macbook air m1 中播放,我无法通过 docker-compose 文件运行 8.0.22 版本的 mysql 映像。
我运行的命令是:output
2021
2
3
10
9
58
我该如何解决这个问题?
答案 0 :(得分:4)
M1 是 ARMv8 (aarch64) 架构,大部分镜像是 X86 (amd64)。整个基于 bitfmt
的仿真过程允许从其他架构运行容器对于 ARMv8 版本的 Docker for Mac 仍然不稳定,因此您需要等待一段时间。
解决这个问题的一种方法是为 ARM64 构建您自己的 mysql
映像,方法是从一些 linux 发行版开始,例如 alpine
、debian
、{{1}并安装 mysql 服务器(与您在裸机安装上所做的相同)。
您可以在 docker hub 中找到许多标记为 ARM64v8 的容器,因此这可以成为创建映像的良好起点。
答案 1 :(得分:2)
我还在 M1 Mac 上处理 X86 (amd64) 图像。但是在您的特定情况下,我建议您只使用 MariaDB(图像 mariadb)。到目前为止,我尝试的所有东西都与 MySQL 完全兼容,并且 MariaDB 可用于 ARM64。
答案 2 :(得分:1)
我们刚刚遇到了这个问题,我从 this answer 那里得到了解决方案。您可以在 docker-compose
文件中指定您的平台,因此在您的情况下,它看起来像:
services:
mysql:
image: mysql:8.0.22
platform: linux/x86_64
container_name: mysqldb
restart: always
ports:
- 3306:3306
volumes:
- mysql:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=test
- MYSQL_DATABASE=DATA
在我们公司,我们使用 M1 和 Intel Mac,此解决方案使 mysql 映像可用于两者。