在Docker映像的kubernetes安装的卷中找不到现有的二进制可执行文件

时间:2019-04-04 20:18:24

标签: docker kubernetes google-kubernetes-engine

我已经在/executables mountPath上安装了一个二进制文件(tini init)。泊坞窗图片为busybox:latest

安装:

- name: executables
  mountPath: /executables

创建卷:

- name: executables
  emptyDir: {}

我运行了一个sidecar容器,将tini二进制文件添加到该卷中。

附加到容器后,在/executables目录内

/executables # ls
tini
/executables # pwd
/executables
/executables # ls
tini
/executables # ./tini 
sh: ./tini: not found
/executables # 

一切都很好,但是当我尝试执行它时,文件就在其中显示not found!使我抓狂。请帮忙!

2 个答案:

答案 0 :(得分:1)

使用静态版本的二进制文件解决了这个问题,事实证明它与此非常相关:https://unix.stackexchange.com/questions/18061/why-does-sh-say-not-found-when-its-definitely-there

答案 1 :(得分:0)

如果您只是下载二进制文件,则您已经更改了权限并在尝试启动它之前先执行chmod +x tini