service-captcha/docker/dev/php/Dockerfile

86 lines
2.2 KiB
Docker
Raw Normal View History

2023-03-05 20:14:04 +06:00
FROM php:8.2-fpm
# Set working directory
WORKDIR /var/www/html
# Install dependencies
RUN apt-get update \
&& apt-get install -y \
apt-utils \
man \
curl \
git \
bash \
vim \
zip unzip \
acl \
iproute2 \
dnsutils \
fonts-freefont-ttf \
fontconfig \
dbus \
openssh-client \
sendmail \
libfreetype6-dev \
libjpeg62-turbo-dev \
icu-devtools \
libicu-dev \
libmcrypt4 \
libmcrypt-dev \
libpng-dev \
zlib1g-dev \
libxml2-dev \
libzip-dev \
libonig-dev \
graphviz \
libcurl4-openssl-dev \
pkg-config \
libldap2-dev \
libpq-dev \
libbz2-dev \
libwebp-dev
2023-06-29 22:14:58 +06:00
RUN curl -sL https://deb.nodesource.com/setup_20.x | bash -
2023-03-05 20:14:04 +06:00
RUN apt-get -y install nodejs
# Clear cache
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
# Install extensions
RUN docker-php-ext-configure intl --enable-intl && \
docker-php-ext-configure bcmath --enable-bcmath && \
docker-php-ext-configure gd --with-freetype --with-jpeg --with-webp && \
docker-php-ext-install -j$(nproc) gd && \
docker-php-ext-install bcmath &&\
docker-php-ext-install pdo \
pgsql pdo_pgsql \
mysqli pdo_mysql \
intl iconv mbstring \
zip pcntl \
exif opcache bz2 \
calendar \
&& pecl install -o -f redis \
&& rm -rf /tmp/pear \
&& docker-php-ext-enable redis \
&& docker-php-source delete
# Install composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# Add user for laravel application
RUN groupadd -g 1000 www
RUN useradd -u 1000 -ms /bin/bash -g www www
# Copy existing application directory contents
COPY . /var/www
# Copy existing application directory permissions
COPY --chown=www:www . /var/www
# Change current user to www
USER www
COPY start.sh /usr/local/bin/start
CMD ["/usr/local/bin/start"]