gpt4 book ai didi

尽管在 PATH(和可执行文件)中,但未找到 Docker 入口点

转载 作者:行者123 更新时间:2023-12-02 17:58:11 24 4
gpt4 key购买 nike

我正在使用以下内容创建一个简单的图像 Dockerfile

FROM docker:latest

COPY docker-entrypoint.sh /usr/local/bin

ENTRYPOINT ['docker-entrypoint.sh']

在我的容器内:
/ # ls -al $(which docker-entrypoint.sh)
-rwxrwxr-- 1 root root 476 Jul 26 07:30 /usr/local/bin/docker-entrypoint.sh

所以入口文件是 两者 PATH 可执行;

但是运行的时候
docker run -v /var/run/docker.sock:/var/run/docker.sock -it imageinit
/bin/sh: [docker-entrypoint.sh]: not found

我知道 this SO question ,但这是关于 PATH的问题和文件权限(已经解决);

最佳答案

有趣的是,您的问题似乎与您选择使用的引号类型有关。如果您更改此行:

ENTRYPOINT ['docker-entrypoint.sh']


ENTRYPOINT ["docker-entrypoint.sh"]

然后一切都开始按预期工作。

如果您检查 the documentation for the type of ENTRYPOINT you are using所有的例子都有双引号。

我怀疑当您使用单引号时发生的情况是 docker 将其解析为 ENTRYPOINT 的 shell 形式并尝试执行一个名为 [docker-entrypoint.sh] 的脚本这将解释错误消息(因为显然不存在该名称的脚本)。

关于尽管在 PATH(和可执行文件)中,但未找到 Docker 入口点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51533482/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com