Initial commit
This commit is contained in:
87
Dockerfile
Normal file
87
Dockerfile
Normal file
@@ -0,0 +1,87 @@
|
||||
FROM php:8.3-fpm
|
||||
|
||||
# Set Environment Variables
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
ENV COMPOSER_ALLOW_SUPERUSER=1
|
||||
# Default to production
|
||||
ENV APP_ENV=production
|
||||
|
||||
# Software’s Installation
|
||||
# Installing tools and PHP extentions using “apt”, “docker-php”, “pecl”,
|
||||
# Install “curl”, “libmemcached-dev”, “libpq-dev”, “libjpeg-dev”,
|
||||
# “libpng-dev”, “libfreetype6-dev”, “libssl-dev”, “libmcrypt-dev”,
|
||||
|
||||
RUN set -eux; \
|
||||
apt-get update; \
|
||||
apt-get upgrade -y; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
curl \
|
||||
ffmpeg \
|
||||
libmemcached-dev \
|
||||
libz-dev \
|
||||
libpq-dev \
|
||||
libjpeg-dev \
|
||||
libpng-dev \
|
||||
libfreetype6-dev \
|
||||
libssl-dev \
|
||||
libwebp-dev \
|
||||
libxpm-dev \
|
||||
libmcrypt-dev \
|
||||
libonig-dev \
|
||||
netcat-traditional \
|
||||
git \
|
||||
curl \
|
||||
zip \
|
||||
zlib1g-dev \
|
||||
libicu-dev \
|
||||
g++ \
|
||||
unzip; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN set -eux; \
|
||||
# Install the PHP pdo_mysql extention
|
||||
docker-php-ext-install pdo_mysql; \
|
||||
# Install the PHP pdo_pgsql extention
|
||||
docker-php-ext-install pdo_pgsql; \
|
||||
# Install the PHP gd library
|
||||
docker-php-ext-configure gd \
|
||||
--prefix=/usr \
|
||||
--with-jpeg \
|
||||
--with-webp \
|
||||
--with-xpm \
|
||||
--with-freetype; \
|
||||
# Install exif
|
||||
docker-php-ext-install exif; \
|
||||
# Install gd
|
||||
docker-php-ext-install gd; \
|
||||
# Install bcmath
|
||||
docker-php-ext-install bcmath;
|
||||
|
||||
RUN docker-php-ext-configure intl
|
||||
RUN docker-php-ext-install intl
|
||||
|
||||
RUN docker-php-ext-install pcntl
|
||||
RUN docker-php-ext-configure pcntl --enable-pcntl
|
||||
|
||||
# Get latest Composer
|
||||
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
||||
|
||||
# Create system user to run Composer and Artisan Commands
|
||||
RUN useradd -G www-data,root -u 1000 -d /home/app www
|
||||
|
||||
RUN mkdir -p /home/app/.composer && \
|
||||
chown -R www:www /home/app
|
||||
|
||||
WORKDIR /var/www
|
||||
|
||||
COPY composer.json composer.lock ./
|
||||
|
||||
RUN composer install --optimize-autoloader --no-scripts --ignore-platform-req=ext-zip
|
||||
|
||||
COPY . .
|
||||
|
||||
RUN chown -R 1000:1000 /var/www
|
||||
|
||||
USER www
|
||||
|
||||
CMD ["php-fpm"]
|
||||
Reference in New Issue
Block a user