gpt4 book ai didi

docker - 使用 ENTRYPOINT 时未找到文件

转载 作者:行者123 更新时间:2023-12-02 19:26:56 25 4
gpt4 key购买 nike

我正在尝试使用 ENTRYPOINT,但每当我这样做时,我都会收到一个错误,因为 no such file or directory

docker 文件:

FROM ubuntu:18.04

COPY . /home

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

RUN ln -s /usr/local/bin/docker-entrypoint.sh

WORKDIR /home
RUN chmod 777 /usr/local/bin/docker-entrypoint.sh

ENTRYPOINT ["docker-entrypoint.sh"]

CMD ["/bin/bash"]

我试过给它权限,试过用绝对路径运行它也试过this ,用 #!/bin/bash#!/bin/sh 试了一下,最后,我仍然遇到找不到文件的错误。

我不确定是什么问题。

最佳答案

您提出的问题:我不记得确切原因,但找不到该文件,因为您将其称为 docker-entrypoint.sh 而不是 ./docker-entrypoint.sh .

您很快就会问的问题:那并不能完全解决您的问题。您已将执行权限添加到 /usr/local/bin 中的 docker-entrypoint.sh 副本,但在 /home 中还有该文件的另一个副本 最先被发现并且没有执行权限。当您尝试使用它时,您会收到权限错误。一个简单的解决方法(取决于你想做什么)包括修改入口点:

ENTRYPOINT ["/bin/bash", "docker-entrypoint.sh"]

如果您将经常使用 Docker,请提供额外的详细信息:能够进入容器或图像以检查其内容是无价的。对于基于 ubuntu 的图像,在某处写下以下行(对于基本上所有其他 linux 操作系统,将 bash 替换为 sh):

docker run -it --rm --entrypoint=bash my_image_name

这将在该图像中打开一个 shell,让您在运行 Dockerfile 的相同环境中进行操作,并调试导致您出现问题的任何内容。

关于docker - 使用 ENTRYPOINT 时未找到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55488088/

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