【问题标题】:Issue with : standard_init_linux.go:228: exec user process caused: no such file or directory问题:standard_init_linux.go:228: exec 用户进程导致:没有这样的文件或目录
【发布时间】:2021-12-15 01:04:53
【问题描述】:

我想测试临时 Docker 映像以运行一个简单的二进制文件,但似乎它不起作用

FROM gcc:4.9 AS build
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp
RUN gcc -o hello main.c
CMD ["./hello"]

FROM scratch
WORKDIR /
COPY --from=build /usr/src/myapp/hello .
CMD ["/hello"]

main.c:

#include <stdio.h>
int main() {
   // printf() displays the string inside quotation
   printf("Hello, World!\n");
   return 0;
}
Docker version 20.10.7, build 20.10.7-0ubuntu5~20.04.2

非常感谢!

【问题讨论】:

    标签: linux docker dockerfile devops dockerhub


    【解决方案1】:

    发现了! 我的 hello 二进制文件具有到 libc 库的动态链接。 虽然暂存图像似乎没有它。

    所以通过静态链接,它可以工作: RUN gcc -o hello -static main.c

    【讨论】:

      猜你喜欢
      • 2021-10-23
      • 1970-01-01
      • 2021-05-16
      • 2018-12-07
      • 2020-10-25
      • 2020-08-03
      • 2019-01-01
      • 2019-09-19
      • 1970-01-01
      相关资源
      最近更新 更多