Docker错误:/ usr / local / bin / docker-entrypoint:第7行:/ usr / local / bin / env2yaml:无法执行二进制文件

时间:2020-03-26 11:41:00

标签: docker powerpc

我正在尝试使用centos:7作为PPC64LE体系结构上的基础映像来构建Logstash 7.6.0映像。

FROM centos:7
COPY bin/docker-entrypoint /usr/local/bin/
COPY env2yaml/env2yaml /usr/local/bin/
ENTRYPOINT ["/usr/local/bin/docker-entrypoint"]

图像已成功构建,但是出现以下错误:

[root@p006vm32 logstash]# docker run -it logstash:7.6.0
/usr/local/bin/docker-entrypoint: line 7: /usr/local/bin/env2yaml: cannot execute binary file

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 

1 个答案:

答案 0 :(得分:0)

假设env2yaml是一个go可执行文件,假定您已将其编译为ppc64le可执行文件。

此后,通过在COPY

之后的Dockerfile中包括此权限来启用执行权限
RUN chmod a+x /usr/local/bin/env2yaml