Saltar al contenido

Cómo realizar cambios en httpd.conf de apache ejecutándose dentro del contenedor DOCKER y reiniciar apache

Ya no tienes que buscar más por otras webs porque llegaste al lugar correcto, tenemos la respuesta que quieres hallar y sin complicaciones.

Solución:

No es necesario adjuntar o ejecutar (que es realmente una función de depuración de todos modos)

Puedes usar docker cp para copiar una versión local de su httpd.conf al contenedor. (De esa manera, puede modificar el archivo desde la comodidad de su entorno local)

docker cp httpd.conf :/path/to/httpd.conf

Una vez hecho esto, puede enviar una señal USR1 para solicitar un reinicio correcto (ver docker kill sintaxis):

docker kill --signal="USR1" 

Reemplazar por la identificación del contenedor o el nombre que ejecuta Apache.

Eso solo funcionará si el proceso principal lanzado por su contenedor es

CMD ["apachectl", "-DFOREGROUND"]

Ver más en “Docker: Cómo reiniciar un servicio que se ejecuta en Docker Container”

Ingrese un contenedor abriendo un shell bash:

docker exec -it containerName bash

Supongo que es mejor que simplemente vuelva a cargar la configuración de apache y no reinicie apache. Pero no seguiría esta ruta y simplemente modificaría Dockerfile y reconstruiría y volvería a ejecutar la imagen.

editar para enlace: https://docs.docker.com/engine/reference/commandline/exec/

Para actualizar las configuraciones de Apache necesita:

  1. Reemplace las configuraciones de Apache.

    • Si tiene una carpeta de configuración asignada desde fuera del contenedor, debe actualizar las configuraciones fuera del contenedor.

    • Si sus configuraciones de Apache están almacenadas dentro del contenedor, deberá ejecutar algo como esto:

      docker cp httpd.conf YOUR_CONTAINER_NAME:/path/to/httpd.conf
      
  2. Hacer Reinicio elegante de Apache:

    sudo docker exec -it YOUR_CONTAINER_NAME apachectl graceful
    

Comentarios y valoraciones

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *