standard_init_linux.go:190: exec 用户进程导致 "exec format error"

standard_init_linux.go:190: exec user process caused "exec format error"

我正在尝试使用 centos:7 作为 PPC64LE 架构上的基础映像构建 kibana 7.6.0 映像。

FROM centos:7 AS prep_files
COPY --from=prep_files --chown=1000:0 /usr/share/kibana /usr/share/kibana
COPY --chown=1000:0 bin/kibana-docker /usr/local/bin/
ENTRYPOINT ["/usr/local/bin/dumb-init", "--"]
CMD ["/usr/local/bin/kibana-docker"]

镜像构建成功,但出现以下错误:

docker run -it kibana:7.6.0
standard_init_linux.go:190: exec user process caused "exec format error" 

Docker:

Client:
Version:      18.03.1-ce
 API version:  1.37
 Go version:   go1.9.5
 Git commit:   ccde200
 Built:        Tue Jun  5 20:32:10 2018
 OS/Arch:      linux/ppc64le
 Experimental: false
 Orchestrator: swarm

Server:
 Engine:
  Version:      18.03.1-ce
  API version:  1.37 (minimum version 1.12)
  Go version:   go1.9.5
  Git commit:   ccde200
  Built:        Tue Jun  5 20:35:04 2018
  OS/Arch:      linux/ppc64le
  Experimental: false

根据this

  1. 将#!/bin/bash 添加到我的入口点文件。

  2. 升级runc.

"exec format error" 表示您是 运行 为另一个平台设计的二进制文件。您需要查看如何编译 bin/kibana-docker 二进制文件或 dumb-init 二进制文件。在主机上,您可以使用 file bin/kibana-docker.

进行检查