| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- # Backend Dockerfile
- FROM php:8.1-apache
- # Install system dependencies
- RUN apt-get update && apt-get install -y \
- libzip-dev \
- libpng-dev \
- libjpeg-dev \
- libfreetype6-dev \
- zip \
- unzip \
- curl \
- && docker-php-ext-configure gd --with-freetype --with-jpeg \
- && docker-php-ext-install gd zip pdo_mysql \
- && a2enmod rewrite
- # Install Composer
- COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
- # Set working directory
- WORKDIR /var/www/html
- # Copy backend files
- COPY backend/ .
- # Install PHP dependencies
- RUN composer install --no-dev --optimize-autoloader
- # Create uploads directory and set permissions
- RUN mkdir -p uploads && \
- chown -R www-data:www-data /var/www/html/uploads && \
- chmod -R 755 /var/www/html/uploads
- # Copy Apache configuration
- COPY docker/apache.conf /etc/apache2/sites-available/000-default.conf
- # Expose port
- EXPOSE 80
- # Start Apache
- CMD ["apache2-foreground"]
|