[英]docker run mysql image command not working [MacBook Pro M1]
[英]Docker image run in m1 processor
我只能在我的 macbook air m1 中播放 docker 預覽,我無法通過 docker-compose 文件運行版本 8.0.22 的 mysql 的圖像。
我運行的命令是: docker-compose up -d mysql
我怎么解決這個問題?
M1 是 ARMv8 (aarch64) 架構,大部分鏡像是 X86 (amd64)。 對於 Mac 版 Docker 的 ARMv8 版本,基於bitfmt
允許從另一個架構運行容器的整個仿真過程仍然不穩定,因此您需要等待一些時間。
One way to overcome this problem is to build your own image of mysql
for ARM64, by starting from some of the linux distributions such as alpine
, debian
, ubuntu
and installing the mysql servers (same as you would have done on a bare-metal installation )。
您可以在標記為ARM64v8的 docker 集線器中找到很多可用的容器,因此這可以作為創建映像的良好起點。
我還在 M1 Mac 上處理了 X86 (amd64) 圖像。 但在您的特定情況下,我建議您簡單地使用 MariaDB(圖像 mariadb)。 到目前為止,我嘗試的所有東西都與 MySQL 完全兼容,並且 MariaDB 可用於 ARM64。
我們剛剛遇到了這個問題,我從這個答案中得到了解決方案。 您可以在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 和英特爾 Mac,此解決方案使 mysql 圖像可用於兩者。
您還可以使用mariadb
作為支持 M1 (arm64) 的mysql
的直接替代品:
mysql:
restart: unless-stopped
image: mysql:5.7.14
變成:
mysql:
restart: unless-stopped
image: mariadb:10.2.41
以下是 MariaDB 圖像的最新標簽列表:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.