FROM php:8.5-apache RUN apt update && \ apt upgrade -y && \ apt install -y \ libzip-dev \ unzip \ libonig-dev \ libxml2-dev \ libpng-dev \ libjpeg-dev \ libicu-dev \ libpq-dev \ sqlite3 \ curl \ git \ cron \ logrotate \ nano RUN service start cron RUN service enable cron RUN docker-php-ext-configure gd --with-jpeg RUN docker-php-ext-configure zip RUN docker-php-ext-install \ zip \ mbstring \ exif \ pcntl \ bcmath \ xml \ intl \ pdo_mysql \ pdo_pgsql RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \ php composer-setup.php --install-dir=/usr/local/bin --filename=composer && \ php -r "unlink('composer-setup.php');" RUN curl -sS https://get.symfony.com/cli/installer | bash && \ mv /root/.symfony5/bin/symfony /usr/local/bin/symfony COPY . /var/www/html/ RUN mv 000-default.conf /etc/apache2/sites-available/ RUN rm /var/www/html/.env* RUN rm -rf /var/www/html/var/* RUN rm -rf /var/www/html/vendor RUN rm -rf /var/www/html/tests RUN rm -rf /var/www/html/translations RUN echo "20 1 * * 6 root cd /var/www/html && /usr/local/bin/php bin/console app:get-audio > /var/log/sermon-notes.log 2>&1" > /etc/cron.d/get-audio RUN chmod 644 /etc/cron.d/get-audio RUN echo "/var/log/sermon-notes.log { monthly rotate 12 compress delaycompress missingok notifempty create 644 root root }" > /etc/logrotate.d/sermon-notes RUN COMPOSER_ALLOW_SUPERUSER=1 composer install --no-scripts --no-dev --optimize-autoloader RUN mkdir /data RUN mkdir /var/www/html/var/cache RUN mkdir /var/www/html/var/log RUN chown -R 33:33 /var/www/html /data RUN chmod -R 755 /var/www/html /data EXPOSE 80