FROM composer:2.6.6 AS composer
FROM php:8.3.16-apache-bookworm

## Предустановленные константы
ARG DEBIAN_FRONTEND=noninteractive
ARG TZ='Europe/Moscow'

## Берем готовый composer
COPY --from=composer /usr/bin/composer /usr/bin/composer

## Чтобы было проще добавлять расширения используем пакет docker-php-extension-installer
## Примерный набор необходимых и достаточных библиотек для работы с CRM (можно при необходимости дополнить)
RUN curl -sSLf -o /usr/local/bin/install-php-extensions https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions && \
    chmod +x /usr/local/bin/install-php-extensions && \
    install-php-extensions apcu opcache intl gd mysqli pdo_mysql pdo_pgsql soap zip imap ldap pcntl amqp sockets redis && \
    a2enmod rewrite && \
    apt-get update && \
    apt-get install -y sudo vim supervisor cron && \
    rm -rf /var/cache/apk/* && \
    chown -R www-data:www-data /var/www/html

COPY --chown=root:root 000-default.conf /etc/apache2/sites-available/000-default.conf
COPY --chown=root:root environment.conf /etc/apache2/conf-enabled/environment.conf
COPY --chown=root:root php.ini-base /usr/local/etc/php/php.ini

## На всякий случай есть порт, который можно пробросить наружу
EXPOSE "80/tcp"

## Переходим/объявляем в рабочий каталог
WORKDIR /var/www/html

## Запускаем обработку
CMD ["apache2ctl", "-D", "FOREGROUND"]
