Задать вопрос
@Strixi

Как настроить деплой в разные докер контейнеры?

Имеется проект в gitlab ci/cd он деплоится на наш сервер (prod) все работает ок, хотелось бы понять как правильно настроить деплой на ДРУГОЙ сервер в докер контейнеры, сервер разделен двумя докер контейнерами dev и test. Есть основная ветка в gitlab, создал dev ветку сразу возник вопрос как gitlab поймет какое значение брать для root и ip при подборе параметров из variables (ведь проект один и тот же просто разные ветки или будет достаточно создать нового ssh1_user и ssh1_ host ). Или без нового проекта не обойтись (с одними и теме же файлами).

Если все суммировать и убрать воду то главный вопрос звучит так, как настроить деплой с одного проекта gitlab на сервер prod и на другой сервер разделенный контейнерами для dev и test для деплоя в них.
  • Вопрос задан
  • 79 просмотров
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 3
fox_12
@fox_12
Расставляю биты, управляю заряженными частицами
variables:
     DEV_CONTAINER: ....
     PROD_CONTAINER: ....

stages:
     - deploy


dev_deploy:
     stage: deploy
     only:
           - develop
     script:
           - делаем что-то на контейнере ${DEV_CONTAINER}

prod_deploy:
     stage: deploy
     only:
            - master
     script:
            - делаем что-то на контейнере ${PROD_CONTAINER}

Переменные можно определить в настройках самого репозитория
Ответ написан
Комментировать
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Используйте для разных окружений разные .env файлы, например - а название окружения в CI переменной крутите.
Ответ написан
Комментировать
SignFinder
@SignFinder
Wintel\Unix Engineer\DevOps
Gitlab позволяет делать условия IF ELSE по множеству вещей, прописывать отдельными блоками правила срабатывания и их можно применять к задачам, в том числе и в зависимости от git branch, из которого идет сборка.
Переменные с полями для входа на разные серверы могут иметь разные имена и использоваться в разных задачах.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы