当前位置: 首页 > 知识库问答 >
问题:

docker运行mysql镜像命令不工作[MacBook Pro M1]

濮波
2023-03-14

我正在学习docker labs官方的多容器应用程序实践教程。在MacBook Pro M1终端上运行以下命令时

docker run -d `
    --network todo-app --network-alias mysql `
    -v todo-mysql-data:/var/lib/mysql `
    -e MYSQL_ROOT_PASSWORD=secret `
    -e MYSQL_DATABASE=todos `
    mysql:5.7

我得到下面的错误。

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

共有2个答案

齐运诚
2023-03-14

当你查看官方的mysql镜像时,你会发现里面没有提到linux/arm64/v8

mysql的情况下,docker文档甚至声明:

并非所有图像都适用于ARM64体系结构。您可以添加--platform linux/amd64以在仿真下运行英特尔映像。特别是,mysql映像不适用于ARM64。您可以通过使用mariadb图像来解决这个问题。

因此,您可以使用mariadb作为一种变通方法,直到他们为mysql提供官方支持,比如:

docker run -d \
  -v todo-mysql-data:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=secret \
  -e MYSQL_DATABASE=todos \
  mariadb:10.5

参见:github.com/docker-library/mysql/issues/318

如果你真的需要mysql镜像,你可以尝试在同一问题中提到的解决方法。到目前为止,我无法测试这个,因为我没有m1 macbook。

张献
2023-03-14

如果其他任何人在遵循Mac M1机器上的指南时遇到此问题,最快的解决方法可能是添加标志:

--platform linux/amd64

喜欢

docker run -d \
    --platform linux/amd64 \
    --network todo-app --network-alias mysql \
    -v todo-mysql-data:/var/lib/mysql \
    -e MYSQL_ROOT_PASSWORD=secret \
    -e MYSQL_DATABASE=todos \
    mysql:5.7

贷记https://github.com/docker/getting-started/issues/144

 类似资料:
  • 我安装了一个docker镜像,我想检查它的CMD命令是什么。有没有cli命令可以这样做?例如,我想让它告诉我这个docker镜像CMD是["rails","server"]

  • 目前,我正在运行一个3节点的Rabbitmq集群,使用下面的docker-comple文件。 这是Dockerfile包含的用于启动容器并形成集群的脚本。 我需要将docker compose转换为docker run命令,并以集群格式启动所有三个容器。我面临的问题是,我需要一个单独的run命令,该命令可以用于逐个启动所有容器(仅按名称区分),并形成一个集群。我如何传递命令,如--link和一些特

  • Windows8.1-mySql 5.6这是一个奇怪的例子:我进入命令提示符输入:mySql-uroot和往常一样,然后返回:“mySql”不被识别为内部或外部命令、可操作程序或批处理文件。 我去寻找mysql。exe和它只是不见了,不是在垃圾桶或任何其他地方。。。刚刚走了。mysql56服务正在运行,我可以使用adminer和PHP访问数据库。 我的问题是:我可以提取另一个zip文件并复制mys

  • 我对Openshift Origin非常陌生。我现在正在尝试在OpenShift origin中部署docker容器的可能性。为此,我创建了一个非常简单的docker容器,它将两个数字相加并产生结果: https://github.com/abrahamjaison01/openshifttest 我在本地创建了一个docker映像,在docker hub中创建了一个公共docker映像: 我在本

  • 我已经下载了jdk 1.8.0\u 131 当我打开命令提示符并编写以下命令-java-version时,它会给出输出 但是当我编写以下命令时:javac-version它会给我输出 我已经编辑了系统变量路径-C:\Progra~1\Java\jdk1.8.0_131\bin; 当我执行以下命令时:"C:\Program Files\Java\jdk1.8.0_131\bin\javac"-ver

  • 拉取官方 Docker 镜像 docker pull apache/shardingsphere-proxy 手动构建 Docker 镜像(可选) git clone https://github.com/apache/shardingsphere mvn clean install cd shardingsphere-distribution/shardingsphere-proxy-dist