gpt4 book ai didi

docker - 为什么Docker入口点脚本无法启动?

转载 作者:行者123 更新时间:2023-12-02 20:35:04 25 4
gpt4 key购买 nike

当我构建Dockerfile时,构建成功,但入口点脚本未启动。我也尝试用ENTRYPOINT ["scripts/run"]替换ENTRYPOINT ["/tmp/files/run"],但仍然无法正常工作。当我直接从命令行运行文件时,将打印“Hello”。
Docker文件

FROM docker.repo1.uhc.com/confluentinc/cp-kafka-connect:5.5.1
COPY scripts/run /tmp/files/run
RUN chmod +x /tmp/files/run
ENTRYPOINT ["scripts/run"]
脚本/运行文件
#!/bin/sh
echo "Hello"
安慰
Step 1/4 : FROM docker.repo1.uhc.com/confluentinc/cp-kafka-connect:5.5.1
---> 8be0645d0a22
Step 2/4 : COPY scripts/run /tmp/files/run
---> Using cache
---> 5bf0b42480c0
Step 3/4 : RUN chmod +x /tmp/files/run
---> Using cache
---> 0d5c7b169a48
Step 4/4 : ENTRYPOINT ["scripts/run"]
---> Running in 0b2e45be4b75
Removing intermediate container 0b2e45be4b75
---> 887bfac238b0
Successfully built 887bfac238b0
我该如何解决?

最佳答案

正确的入口点应该是

ENTRYPOINT ["/tmp/files/run"]
还有一些额外的注意事项:
  • 附加文件扩展名(在您的情况下为.sh)
  • 不要使用/tmp文件夹。它旨在仅保留临时文件,并且将在重新启动时逐出。
  • 入口点脚本通常放置在/中。将其放置为/entrypoint.sh
  • 不要在FROM -clause中使用URL。最好写FROM confluentinc/cp-kafka-connect:5.5.1。如果使用镜像,则可以在docker中进行配置。看看here
  • 关于docker - 为什么Docker入口点脚本无法启动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64149619/

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