92 lines
1.8 KiB
Docker
92 lines
1.8 KiB
Docker
FROM drupal:10.1.6-php8.2-apache-bookworm
|
|
|
|
# Install all the stuff we need
|
|
|
|
# Install packages
|
|
|
|
RUN set -eux; \
|
|
\
|
|
if command -v a2enmod; then \
|
|
a2enmod rewrite; \
|
|
fi; \
|
|
apt-get update;
|
|
|
|
RUN apt-get install -y \
|
|
autoconf \
|
|
automake \
|
|
coreutils \
|
|
libfreetype6-dev \
|
|
libjpeg-dev \
|
|
libpng-dev \
|
|
libpq-dev \
|
|
libtool \
|
|
libwebp-dev \
|
|
libxml2-dev \
|
|
libzip-dev \
|
|
curl \
|
|
imagemagick \
|
|
libargon2-1 \
|
|
libonig-dev \
|
|
libreadline-dev \
|
|
libsqlite3-dev \
|
|
git \
|
|
unzip \
|
|
vim \
|
|
wget;
|
|
|
|
# Add php extensions
|
|
RUN docker-php-ext-configure gd \
|
|
--with-freetype \
|
|
--with-jpeg=/usr \
|
|
--with-webp;
|
|
|
|
RUN docker-php-ext-install -j "$(nproc)" \
|
|
dom \
|
|
filter \
|
|
gd \
|
|
opcache \
|
|
pdo_mysql \
|
|
pdo_pgsql \
|
|
zip;
|
|
|
|
RUN pecl install \
|
|
apcu \
|
|
uploadprogress;
|
|
|
|
RUN docker-php-ext-enable uploadprogress;
|
|
|
|
# set recommended PHP.ini settings
|
|
# see https://secure.php.net/manual/en/opcache.installation.php
|
|
COPY zz-custom-opcache-settings.ini /usr/local/etc/php/conf.d/zz-custom-opcache-settings.ini
|
|
|
|
# Tweek PHP
|
|
COPY zz-custom-php-settings.ini /usr/local/etc/php/conf.d/zz-custom-php-settings.ini
|
|
|
|
# Install composer
|
|
COPY --from=composer:2 /usr/bin/composer /usr/local/bin/
|
|
|
|
# Add private files directory
|
|
RUN mkdir -p /var/www/private_files && chown -R www-data /var/www/private_files
|
|
|
|
# Add Drupal directory
|
|
RUN mkdir -p /opt/drupal
|
|
|
|
# Change workdir
|
|
WORKDIR /opt/drupal
|
|
|
|
# Copy entrypoint to image
|
|
COPY entrypoint_drupal.sh /usr/local/bin/entrypoint.sh
|
|
RUN chmod +x /usr/local/bin/entrypoint.sh
|
|
|
|
# Copy Drupal settings from context to image
|
|
COPY settings.php /settings.php
|
|
|
|
# (Re)link html dir
|
|
RUN ln -sf /opt/drupal/web /var/www/html
|
|
|
|
ENV PATH=${PATH}:/opt/drupal/vendor/bin
|
|
|
|
# Define entrypoint
|
|
ENTRYPOINT entrypoint.sh
|
|
|
|
# vim:set ft=dockerfile:
|