# Move from standalone container to separate web and data containers

**URL:** https://meta.discourse.org/t/move-from-standalone-container-to-separate-web-and-data-containers/29413
**Category:** Sysadmins
**Tags:** docker, how-to, advanced-setup, two-container
**Created:** [29.Май.2015 14:12:22 UTC](https://meta.discourse.org/t/move-from-standalone-container-to-separate-web-and-data-containers/29413 "2015-05-29T14:12:22Z")
**Posts on this page:** 1
**Showing post:** 48

<div class="post-metadata">

### Author: ![neounix](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/neounix/32/215617_2.png) [@neounix](https://meta.discourse.org/u/neounix)
#### Post date: [10.Апрель.2020 10:08:13 UTC](https://meta.discourse.org/t/move-from-standalone-container-to-separate-web-and-data-containers/29413/48 "2020-04-10T10:08:13Z")

</div>

> [@pfaffman](#):
>
> Меня всегда беспокоило, что это будет сложно поддерживать: пользователи, которые не поймут, как это работает, попытаются использовать его, а затем не смогут воспользоваться никакой документацией, поскольку команда «rebuild app» больше не будет работать, а также сложно определить, когда необходимо пересобрать контейнер базы данных.

Привет, Джей @pfaffman! Спасибо за этот пост и другие сообщения на тему «два контейнера», включая статьи Сэма по этой же теме.

Вопрос:

Мы пытаемся настроить два контейнера, как вы упоминали: один для `data` и один для `web-only`, но на macOS у нас возникло множество проблем с запуском этой конфигурации.

Однако прежде чем мы начнём отлаживать эту «конфигурацию с двумя контейнерами» на macOS или Ubuntu, мы хотим убедиться, что делаем это по правильной причине.

Причина, по которой мы хотим выполнить эту «танцеву с двумя контейнерами», заключается в том, чтобы сайт не падал при пересборке веб-приложения, например при установке плагина. Кроме того, когда мы вносим изменения в собственный плагин, мы заметили, что иногда единственный способ убедиться, что наши изменения работают, — это пересобрать приложение (это уже отдельная история).

Также я сталкиваюсь с трудностями при настройке «быстрой и удобной» среды веб-разработки, но это тоже тема для другого дня.

Итак, мой вопрос: действительно ли конфигурация с «двумя контейнерами» значительно сокращает время простоя при пересборке только веб-части приложения?

Разве это не правильный подход к решению задачи?

Когда мы устанавливаем плагин или вносим в него изменения, нам нужно пересобирать только файл yml для «web-only», а не файл yml для данных?

Мы пришли из мира LAMP-форумов, где изменения в плагинах обычно вносятся в реальном времени на работающем сайте (без простоя, если только мы не допустим грубой ошибки). Также у нас есть опыт работы с VueJS-приложениями, где мы собираем приложение на рабочем столе, а затем просто загружаем его и заменяем старую версию новой — обновление происходит практически без простоя. Однако с Discourse мы сталкиваемся с простоями, чего мы хотим избежать (даже нескольких секунд).

Демонстрирует ли решение с «двумя контейнерами» значительное улучшение времени простоя в следующих случаях: (1) при пересборке приложения (для установки плагинов, внесения изменений в код и т. д.) или (2) при восстановлении из полной резервной копии?

Мне кажется, меня снова «накажут» за этот вопрос, поскольку мы ищем способ запустить Discourse в продакшене и вносить изменения практически без простоя, но пока не нашли способа сделать то, что так легко реализуется в LAMP или VueJS-приложениях.

Отсюда и наши трудности / интерес к методу с «двумя контейнерами», который нам пока не удалось запустить.

Спасибо!

---

_[View the full topic](https://meta.discourse.org/t/move-from-standalone-container-to-separate-web-and-data-containers/29413)._
