|
FROM php:8.2-fpm |
|
|
|
# Set working directory |
|
WORKDIR /var/www/html |
|
|
|
USER root |
|
|
|
# Set timezone to Asia/Jakarta |
|
RUN apk update |
|
RUN ln -snf /usr/share/zoneinfo/Asia/Jakarta /etc/localtime && echo Asia/Jakarta > /etc/timezone |
|
|
|
# Copy application files |
|
COPY ./.docker/php.ini /etc/php7/php.ini |
|
RUN sed -i 's|root /var/www/html|root /var/www/html/public|' /etc/nginx/conf.d/default.conf |
|
|
|
COPY /.docker/nginx.conf /etc/nginx/nginx.conf |
|
COPY /.docker/www.conf /etc/php7/php-fpm.d/www.conf |
|
COPY /.docker/default.conf /etc/nginx/default.conf |
|
COPY /.docker/supervisord.conf /etc/supervisor/supervisord.conf |
|
|
|
COPY . . |
|
|
|
RUN mkdir -p /var/www/html/bootstrap \ |
|
/var/www/html/bootstrap/cache \ |
|
/var/www/html/storage/debugbar \ |
|
/var/www/html/storage/app \ |
|
/var/www/html/storage/app/public \ |
|
/var/www/html/storage/framework \ |
|
/var/www/html/storage/framework/views \ |
|
/var/www/html/storage/framework/sessions \ |
|
/var/www/html/storage/framework/cache \ |
|
/var/www/html/storage/framework/cache/data \ |
|
/var/www/html/storage/framework/testing \ |
|
/var/www/html/storage/logs \ |
|
/var/www/html/public/temp |
|
RUN chmod 777 /var/www/html/bootstrap \ |
|
/var/www/html/bootstrap/cache \ |
|
/var/www/html/storage/debugbar \ |
|
/var/www/html/storage/app \ |
|
/var/www/html/storage/app/public \ |
|
/var/www/html/storage/framework \ |
|
/var/www/html/storage/framework/views \ |
|
/var/www/html/storage/framework/sessions \ |
|
/var/www/html/storage/framework/cache \ |
|
/var/www/html/storage/framework/cache/data \ |
|
/var/www/html/storage/framework/testing \ |
|
/var/www/html/storage/logs \ |
|
/var/www/html/storage/logs/ \ |
|
/var/www/html/public/temp |
|
|
|
RUN touch /var/www/html/storage/logs/laravel.log && chmod 666 /var/www/html/storage/logs/laravel.log |
|
|
|
RUN composer install |
|
|
|
EXPOSE 80 |
|
|
|
USER user |
|
|
|
# Start Supervisor |
|
CMD ["/usr/bin/supervisord", "-n", "-c", "/etc/supervisor/supervisord.conf"] |