From 564719412b944b09c4ccbbd97938b76dd85f16f8 Mon Sep 17 00:00:00 2001 From: Frank John Begornia Date: Thu, 18 Dec 2025 13:58:13 +0800 Subject: [PATCH] Add entrypoint script to set up permissions and create storage directories --- Dockerfile | 7 ++++++- docker-entrypoint.sh | 17 +++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 docker-entrypoint.sh diff --git a/Dockerfile b/Dockerfile index 7fbdcc3..f913dfc 100755 --- a/Dockerfile +++ b/Dockerfile @@ -69,8 +69,13 @@ RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf # Suppress Apache ServerName warning RUN echo "ServerName localhost" >> /etc/apache2/apache2.conf +# Copy entrypoint script +COPY docker-entrypoint.sh /usr/local/bin/ +RUN chmod +x /usr/local/bin/docker-entrypoint.sh + # Expose port 80 EXPOSE 80 -# Start Apache +# Use entrypoint to set up permissions before starting Apache +ENTRYPOINT ["docker-entrypoint.sh"] CMD ["apache2-foreground"] \ No newline at end of file diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh new file mode 100644 index 0000000..7d70888 --- /dev/null +++ b/docker-entrypoint.sh @@ -0,0 +1,17 @@ +#!/bin/bash +set -e + +# Create storage directory structure if it doesn't exist +mkdir -p storage/framework/views +mkdir -p storage/framework/cache +mkdir -p storage/framework/sessions +mkdir -p storage/logs +mkdir -p storage/app/public +mkdir -p bootstrap/cache + +# Set proper permissions +chown -R www-data:www-data storage bootstrap/cache +chmod -R 775 storage bootstrap/cache + +# Execute the main command +exec "$@"