【问题标题】:How do I make the apache2 service to run automatically on container restart?如何让 apache2 服务在容器重启时自动运行?
【发布时间】:2020-07-08 08:11:44
【问题描述】:

我有这个安装了 apache2 的 ubuntu docker 容器,并且我在其中托管了一个网页。 我基本上希望每次运行容器时 apache2 服务都能自动运行。 我不想每次都进入容器内部并启动服务。

我已经尝试使用 Dockerfile 构建一个图像来完成这项工作。

FROM apache
ADD ./index.html /var/www/html
ENTRYPOINT apachectl -D FOREGROUND

但是有没有办法做到这一点,而不必使用 dockerfile 构建映像并使用 ENTRYPOINT 命令?

【问题讨论】:

    标签: docker dockerfile containers apache2


    【解决方案1】:

    你在Dockerfile中添加的基础镜像根本不存在,应该是from https:2.4

    什么是 httpd?

    Apache HTTP 服务器,俗称 Apache,是一种 Web 服务器应用程序,以在万维网的初始发展中发挥关键作用而著称。最初基于 NCSA HTTPd 服务器的 Apache 开发始于 1995 年初,当时 NCSA 代码的工作停滞不前。 Apache 迅速取代 NCSA HTTPd 成为主要的 HTTP 服务器,并且自 1996 年 4 月以来一直是最流行的 HTTP 服务器。

    docker-hub-httpd

    现在来解决您的问题,您根本不需要定义 ENTRYPOINTCMD,因为它已经来自基本映像。

    FROM httpd:2.4
    COPY ./index.html /usr/local/apache2/htdocs/
    

    就是这样,不要覆盖CMD,它会在容器重启或docker服务时重启。

    【讨论】:

      猜你喜欢
      • 2014-09-27
      • 2023-04-08
      • 2019-11-24
      • 2011-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-23
      相关资源
      最近更新 更多