![](/img/trans.png)
[英]ModuleNotFoundError: No module named 'mysql' in M1 Macbook pro
[英]docker run mysql image command not working [MacBook Pro M1]
我正在關注多容器應用程序教程的官方 docker 實驗室動手教程。 在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 匹配的清單。
如果其他人在遵循 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
當您查看官方mysql鏡像時,您可以看到沒有提及linux/arm64/v8
對於mysql
docker 文檔甚至指出:
並非所有映像都可用於 ARM64 架構。 您可以添加 --platform linux/amd64 以在仿真下運行 Intel 映像。 特別是,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。
如果您正在使用 docker 撰寫您的容器 ochestration,您可以讓您的docker-compose.yaml
文件鏡像類似於此
services:
mysql:
platform: linux/amd64
#you can use whatever image you prefer
image: "mysql:5.7"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.