首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么Docker在$PATH中找不到`/bin/sh`的可执行文件?

为什么Docker在$PATH中找不到`/bin/sh`的可执行文件?
EN

Stack Overflow用户
提问于 2021-02-21 03:51:32
回答 2查看 221关注 0票数 1

你能找出为什么这个Dockerfile

代码语言:javascript
复制
FROM docker.io/fluent/fluent-bit:1.6-debug
RUN ln -sf /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime

给出

代码语言:javascript
复制
STEP 1: FROM docker.io/fluent/fluent-bit:1.6-debug
STEP 2: RUN /usr/local/bin/ln -sf /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime
2021-02-20T19:44:50.000358546Z: executable file `/bin/sh` not found in $PATH: No such file or directory
error running container: error creating container for [/bin/sh -c /usr/local/bin/ln -sf /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime]: : exit status 1
Error: error building at STEP "RUN /usr/local/bin/ln -sf /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime": error while running runtime: exit status 1

如果我这样做了

代码语言:javascript
复制
$ docker run -ti fluent-bit:1.6-debug sh
ln -sf /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime

然后它就能工作了..。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-02-22 03:13:10

代码语言:javascript
复制
FROM docker.io/fluent/fluent-bit:1.6-debug
RUN ["ln", "-sf",  "/usr/share/zoneinfo/Europe/Copenhagen", "/etc/localtime"]
票数 1
EN

Stack Overflow用户

发布于 2021-02-21 06:21:00

因为您的docker.io/fluent/fluent-bit:1.6-debug基础镜像基于无发行版基础镜像:https://docs.fluentbit.io/manual/installation/docker#multi-architecture-images

您可以在容器中输入shell并执行命令,因为您使用的调试映像版本中包含busybox https://github.com/GoogleContainerTools/distroless#debug-images

有关无发行版的更多信息:https://github.com/GoogleContainerTools/distroless/blob/master/README.md

要实现您想要的功能,可以指定shell是busybox sh函数,而不是这里不存在的默认/bin/sh函数。

代码语言:javascript
复制
FROM docker.io/fluent/fluent-bit:1.6-debug
SHELL ["busybox", "sh", "-c"]
RUN ln -sf /usr/share/zoneinfo/Europe/Copenhagen /etc/localtime

请记住,您只能使用调试映像版本来执行此操作。还要记住,非发行版镜像仅用于运行您的程序,而不能用于其他用途。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66295923

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档