Доброе утро, bob-12345
Смысл докер-контейнеров в том, чтобы получить более гибкую архитектуру.
Я приведу пример из своей трудовой жизни:
ВыЕсли у вас есть приложение, которое работает на php7.0, вы теперь хотите проверить, работает ли оно с php 7.3, поэтому вы просто останавливаете контейнер php 7.0, запускаете 7.3 и проверяете ваше приложение. Или вы хотите проверить, работает ли он по-прежнему с ngnx и php-fpm и т. Д. ...
Поэтому не рекомендуется размещать на вашем веб-сервере слой кодирования и постоянный слой в одном контейнере из-за проблем с версиями.
Если вы все еще хотите, чтобы все это было в одном. Я бы посоветовал вам начать с простого debian / ubuntu / whatEverDistroYouPrefer и начать сборку так, как вы делаете это на обычном веб-сервере.
Например:
FROM debian:latest
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
&& http \
&& php \
...
Я надеюсь, что смогу вам помочь:)