Estoy creando una imagen de Docker para mi Symfonyaplicación y necesito dar permiso al servidor apache para escribir en la caché y las carpetas de registro
#Dockerfile
FROM php:7-apache
RUN apt-get update \
&& apt-get install -y libicu-dev freetds-common freetds-bin unixodbc \
&& docker-php-ext-install intl mbstring \
&& a2enmod rewrite
COPY app/php.ini /usr/local/etc/php/
COPY app/apache2.conf /etc/apache2/apache2.conf
COPY ./ /var/www/html
RUN find /var/www/html/ -type d -exec chmod 755 {} \;
RUN find /var/www/html/ -type f -exec chmod 644 {} \;
RUN chmod -R 777 /var/www/html/app/cache /var/www/html/app/logs
Cuando construyo esta imagen con docker build -t myname/symfony_apps:latest .y ejecuto el contenedor con docker run -p 8080:80 myname/symfony_apps:latest. El registro de Apache está inundado por errores de permiso denegado, lo extraño con lo que he verificado ls -ay los permisos están bien. y cuando ejecuto chmod desde bash del contenedor, los problemas de permisos de apache desaparecen y la aplicación funciona bien
La situación
Ejecución de comandos chmod desde dockerfile: los permisos se cambian, pero apache aún se queja por el permiso denegado. Ejecutando chmod mismos comandos con bash dentro del contenedor: los permisos se cambian y mi aplicación se está ejecutando
¿Alguna idea, me falta algo, tal vez debería agregar un usuario root en algún lugar del Dockerfile?
apache2.conf) no está causando un problema? ¿Los errores desaparecen si no los instala apache2.conf?