Только для веба — нужен ли отдельный образ для каждого контейнера?

Он содержит уникальные копии тем вашего сайта, включая JS, CSS и другие типы ресурсов.

Также уникальная комбинация ваших плагинов и их зависимостей.

Это долгая история, но Discourse и большинство инструментов были созданы до появления таких технологий, как Docker Compose.

Мы поставляем «тяжелый» контейнер, содержащий всё необходимое, и у этого подхода есть несколько компромиссов. Например, stateful-контейнер позволяет реализовать такие функции, как наш веб-интерфейс для обновления в один клик.

С точки зрения современных подходов к развёртыванию контейнеров это действительно большое расхождение. Эта тема подробно обсуждается в статье Может ли Discourse выпускать частые образы Docker, не требующие начальной настройки?, и её стоит прочитать.

В итоге наш текущий подход хорошо работает для людей с минимальными техническими навыками, которые могут копировать и вставлять команды в сеансе SSH, настраивать DNS, но не являются экспертами в работе с Linux-контейнерами.

А для настоящих мастеров Linux-контейнеров мы можем сказать, что они могут взять этот образ после начальной настройки, загрузить его в реестр и использовать в предпочитаемом ими инструменте оркестрации контейнеров.

Но люди, находящиеся между этими двумя категориями, испытывают наибольшие трудности.