FROM php:8.2-apache-bookworm RUN apt-get update && apt-get install -y libicu-dev libzip-dev icu-devtools libpng-dev libpq-dev zlib1g-dev zlib1g libmcrypt-dev nano default-mysql-client RUN apt-get install -y libjpeg62-turbo-dev libfreetype6-dev libpng-dev RUN docker-php-ext-configure gd --with-freetype --with-jpeg RUN docker-php-ext-install -j$(nproc) gd intl mysqli pdo_mysql zip opcache ftp RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer RUN curl -fsSL https://deb.nodesource.com/setup_18.x | bash - RUN apt-get install -y nodejs=18.15.0-1nodesource1 RUN useradd -ms /bin/bash vms RUN a2enmod rewrite remoteip RUN cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini RUN sed -i 's/${APACHE_RUN_USER:=www-data}/${APACHE_RUN_USER:=vms}/' /etc/apache2/envvars && \ sed -i 's/${APACHE_RUN_GROUP:=www-data}/${APACHE_RUN_GROUP:=vms}/' /etc/apache2/envvars && \ sed -i 's|/var/www/html|/var/www/html/public|' /etc/apache2/sites-available/000-default.conf && \ sed -i 's/;date.timezone =/date.timezone = Asia\/Jakarta/' /usr/local/etc/php/php.ini && \ sed -i 's/;error_log = php_errors.log/error_log = \/var\/www\/html\/logs\/php_errors.log/' /usr/local/etc/php/php.ini && \ sed -i 's/memory_limit = 128M/memory_limit = 512M/' /usr/local/etc/php/php.ini && \ sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 64M/' /usr/local/etc/php/php.ini && \ sed -i 's/post_max_size = 8M/post_max_size = 64M/' /usr/local/etc/php/php.ini