No se puede iniciar el servicio httpd en la imagen de la ventana acoplable

No se puede iniciar el servicio httpd en la imagen de la ventana acoplable

Tengo el siguiente Dockerfile que debería iniciar una máquina centos e instalar httpd:

FROM centos:centos6.6
RUN yum install -y httpd
RUN chkconfig httpd on; 
RUN /etc/init.d/httpd start
EXPOSE 80

CMD ["/bin/bash"]

Construyo la imagen:

docker build --no-cache -t centos_http .

La construcción dice:

...
Step 4/6 : RUN /etc/init.d/httpd start
---> Running in 0766e84ec292
Starting httpd: httpd: Could not reliably determine the server's fully  qualified domain name, using 172.17.0.2 for ServerName
[  OK  ]
...
Successfully built 5380a0bacdfb

Pero si ejecuto la imagen:

docker run  -p 8090:80 -it  5380
[root@eda7400a46a9 /]# ps -ef | grep httpd | grep -v grep
[root@eda7400a46a9 /]# 

¡httpd no se está ejecutando! si ejecuto manualmente /etc/init.d/httpd start, dentro de la imagen, funciona bien...

Respuesta1

Lo estás haciendo completamente mal. RUNEl comando se ejecutará solo durante la compilación. Deberías usar algo como lo siguiente

FROM centos:6.6

RUN yum install -y httpd

EXPOSE 80

ENTRYPOINT ["/usr/sbin/httpd", "-D", "FOREGROUND"]

También puedes echarle un vistazoDockerfile oficial de Apache

información relacionada