Реально ли запустить всю промежуточную среду на том же выделенном сервере, который находится в производстве, на сервере с низким трафиком / нагрузкой?
Поскольку созданное нами приложение было запущено всего несколько дней назад, мы хотели бы сэкономить часть затрат на покупку другого выделенного сервера только для промежуточных запусков, поскольку трафик составляет менее 50% от максимальной нагрузки сервера.
Мы думали о запуске контейнера докеров, который запускал бы все запущенные контейнеры докеров, на производственном блоке и запускал все тесты на нем. Затем, если тесты пройдены, сборка развертывается, а контейнер уничтожается.
Задайте себе этот вопрос:
Стоит ли простой из-за остановки производства контейнеров дополнительной экономии затрат?
Для некоторых это может быть нормально. Но для меня это не так. Проблема в постановке может закончиться проблемой в производстве. Неудержимый процесс, случайно использующий производственную базу данных, когда вы хотели выполнить постановку, уничтожение не того контейнера и т. Д.
Это, безусловно, возможно. Я не думаю, что что-то технически мешает вам сделать это, и я делал это в прошлом. Но меня это тоже укусило раньше, и я обычно могу убедить других, что разделение среды стоит небольших дополнительных затрат.
В том же духе обычно рекомендуется следить за тем, чтобы паритет среды был как можно ближе. Я принимаю участие в программе «Двенадцать факторов» и http://12factor.net/dev-prod-parity может быть уместным и здесь.
Итак, чтобы ответить на поставленный вопрос, реально ли это? Конечно, это возможно и правда, что это сработает. Это рекомендуется? На мой взгляд, нет.