我正在运行Docker Apple Silicon Preview的最新版本。我创建了教程容器/图像,它工作正常。当我创建自定义 YAML 文件并运行 docker-compose 时,在拉取 mysql 时出现以下错误:
错误:清单列表条目中没有与 linux/arm64/v8 匹配的清单
这是我的 YAMl 文件中的一个片段:
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
Run Code Online (Sandbox Code Playgroud)
我试过 :latest 和 :8 导致同样的错误。它可以很好地拉动 phpmyadmin 和 wordpress。
我真的不熟悉 docker,但我正在使用 docker 运行一个网络应用程序,该应用程序使用 prisma/nexus
当我尝试撰写时,出现以下错误:
Error: Unknown binaryTarget linux-arm-openssl-undefined and no custom binaries were provided
Run Code Online (Sandbox Code Playgroud)
有人可以告诉我这个错误是什么意思,我该如何解决它?我认为这与 docker 不支持我正在开发的操作系统有关,但我不完全确定。
当前的 docker 测试版要求您在--platform=linux/amd64每次需要时指定一个build或runamd64 图像/容器。
文档提到
当运行具有多架构支持的镜像时,docker 会自动选择与您的操作系统和架构相匹配的镜像变体。
该文档未指定使用 env 变量更改此自动行为的方法。它似乎忽略了 BUILDPLATFORM 和 TARGETPLATFORM。
是否有任何其他方法强制docker运行所有build和run使用的平台的命令linux/amd64,而不是linux/arm64/v8默认情况下在苹果硅运行MacOS的?