容器应用程序无法启动,并显示“standard_init_linux.go:228: exec user process Caused: exec format error”

jef*_*lan 8 azure-container-apps

使用 Azure 容器应用程序并在部署时命令无法配置容器并告诉我检查日志分析。当我检查时,我只看到容器中的一条日志,上面写着:

standard_init_linux.go:228: exec 用户进程导致: exec 格式错误

这里有什么问题?

jef*_*lan 20

当 docker 镜像的架构与运行时环境不匹配时,可能会发生此错误。Azure 容器应用程序在 amd64 arch 上运行,我从 Mac M1 ARM 处理器构建并发布了这些 docker 容器。我在这里有两个选择:

  1. 使用docker buildx build --platform linux/amd64模拟器 amd64 等功能并在那里发布版本
  2. 使用一些远程构建(例如 GitHub Actions)在与 Azure 容器应用程序环境匹配的架构上构建容器