【问题标题】:auto start script in debiandebian 中的自动启动脚本
【发布时间】:2019-07-11 14:01:59
【问题描述】:

我想为我的项目创建一个自动启动脚本。我使用 docker 并想尝试在容器启动时启动的脚本。

我尝试运行 update-rc,但没有任何问题,但没有生成符号链接。我在文件资源管理器和我的脚本中检查了它:

mkdir /var/www/$(date +%Y%m%d_%H%M%S)

但是什么也没发生。 这是在我的 dockerfile 中:

COPY starter.sh /etc/init.d/starter.sh
RUN chmod +x /etc/init.d/starter.sh
RUN chmod 755 /etc/init.d/starter.sh
RUN update-rc.d starter.sh defaults 10

我没有收到任何错误消息。那是我的问题:)

【问题讨论】:

  • 只需将您的程序作为入口点运行即可。

标签: docker debian


【解决方案1】:

在您的 docker 文件中使用以下说明:

复制 starter.sh /starter.sh

运行 chmod +x /starter.sh && chmod 0755 /starter.sh

入口点 ["/starter.sh"]

CMD ["defaults", "10"]

【讨论】:

    【解决方案2】:

    RUN 语句中的内容在映像构建期间执行。他们可以在 Docker 镜像中生成文件,但不能创建在镜像构建完成后仍然运行的进程(这将如何工作?)

    最简单的解决方案可能是创建一个入口点来启动您的服务,然后运行任何用户提供的命令。

    【讨论】:

    • 你有一个例子吗? :)
    • 很大程度上取决于您从哪个精确图像构建。 This Docker documentation 是我在 Google 上搜索到的“docker debian run services”。
    猜你喜欢
    • 2016-02-01
    • 2021-08-15
    • 2021-04-07
    • 1970-01-01
    • 2021-08-15
    • 2013-02-16
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多