GitLab CI / CD - настройка для проекта LAMP - PullRequest
0 голосов
/ 07 марта 2019

У нас есть обычный проект LAMP, и мы недавно перешли на Gitlab (вместо Github).

Ранее мы использовали Jenkins для развертывания, теперь я планирую перенести его на Gitlab CI/CD.

У нас есть серверы A и B (с Loadbalancer) для разработка версия и серверы C и D (аналогично, с LB) для рабочей среды.

Поскольку это проект LAMP, развертывание так просто: - последние изменения извлекаются из репозитория;- все измененные файлы находятся в общедоступной веб-папке;- запущены некоторые утилиты, такие как composer и npm .

В основном мне нужно развернуть изменения для двух VPS для разработки и двух рабочих.

DoЯ должен установить и запустить бегун на каждом из них?Или есть более эффективный подход?

1 Ответ

1 голос
/ 08 марта 2019

Есть много возможных подходов (я предполагаю, что вы работаете в Unix):

  • Просто создайте новый сервер и установите gitlab-runner на нем и зарегистрируйтесьЭто.Установите зависимости на самом сервере.
  • Если вы уверены в докере, я предлагаю вам установить его как Docker service .Для зависимостей создайте образ докера, добавив утилиты и ссылаясь на образ контейнера в расширенной конфигурации config.toml с флагом --image.Это будет запускать контейнер на основе вашего образа для каждой сборки.
  • Если вы знаете Kubernetes, используйте kubernetes executor и собирайте его непосредственно в кластере.Вам все еще нужно создать собственный образ с зависимостями и связать его в конфигурации бегуна с --kubernetes-image

Для развертывания просто скопируйте файлы на целевые серверы после сборки, используя такие инструменты, как scp или rsync.Лучше (если ваш проект LAMP докеризован): создайте образ докера, поместите его в реестр и перенесите его на свой сервер.Еще лучше: разверните все контейнеры в таком оркестраторе, как Kubernetes.

...