12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- FROM php:8.1-fpm
-
- # Set working directory
- WORKDIR /var/www
-
- # Install dependencies
- RUN apt-get update && apt-get install -y \
- build-essential \
- libpng-dev \
- libjpeg62-turbo-dev \
- libfreetype6-dev \
- locales \
- zip \
- jpegoptim optipng pngquant gifsicle \
- vim \
- unzip \
- git \
- curl \
- libonig-dev \
- libzip-dev \
- libxml2-dev
-
- # Clear cache
- RUN apt-get clean && rm -rf /var/lib/apt/lists/*
-
- # Install PHP extensions
- RUN docker-php-ext-configure gd --with-freetype --with-jpeg \
- && docker-php-ext-install pdo_mysql mbstring exif pcntl bcmath gd
-
- # Install Composer
- COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
-
- # Copy existing application directory contents
- COPY . /var/www
-
- # Create storage and bootstrap/cache directories and set permissions
- RUN mkdir -p /var/www/storage /var/www/bootstrap/cache \
- && chown -R www-data:www-data /var/www/storage /var/www/bootstrap/cache \
- && chmod -R 775 /var/www/storage /var/www/bootstrap/cache
-
- # Copy existing application directory permissions
- COPY --chown=www-data:www-data . /var/www
-
- # Change current user to www
- USER www-data
-
- # Expose port 9000 and start php-fpm server
- EXPOSE 9000
- CMD ["php-fpm"]
|