LINUX.ORG.RU

Посоветуйте туториал по по деплойменту web-сервисов

 , , , ,


0

1

Ситуация такая: есть куча REST-API сервисов приложений на Node.js и пара на PHP. Работют они на одном серваке очень топорно: Для ноды из гита задеплоены вручную папки и все это запущено через pm2, в автостарт системы записаны скрипты для автозапуска этого всего. Обновления проходят тупо заходом в папку и потом git pull с битбакета из продакшн-репозитория. Все это на разных портах и потом через nginx.conf прибинжено к нужным доменам PHP-сервисы работают не менее топорно: есть пара докер контейнеров с разными версиями пыха для них, порты с контейнеров проброшены в основную ось и так же через nginx.conf прикручены к нужным доменам.

Посоветуйте туториал как привести это хозяйство в порядок. С использованием единого набора средств, не знаю, например Ansible+CoreOS+Docker (или другой стек). Чтобы это один раз настроить, а потом деплоить уже удобно и красиво с рабочей станции. И можно было контроллировать это все через какой-нибудь гуй типа Ansible Tower.

P.S.: возможно даже платный по умеренной стоимости

Нужен именно один туториал где все это будет описано, в сети слишком много инструкций с разными подходами от которых пухнет голова


Ответ на: комментарий от intel

То, что ты хочешь, называется CD-пайплайн и делают его отдельные люди - DevOps инженеры.
Коли таких под рукой нет, я бы рекомендовал завести всё это на, к примеру, Jenkins - что бы иметь единую точку параметризации и запуска на одном, пока, хосте, а потом отрывать отдельные куски и переделывать с использованием подходящих тулов по небольшим туториалам.
Но, в целом, это отдельное направление и разработчик - несколько другая специализация.

Yustas ★★★★ ()

Чтобы это один раз настроить, а потом деплоить уже удобно и красиво

Так оно вроде уже настроено. И вроде даже автоматом, а не с красивой станции.

stave ★★★★★ ()
Ответ на: комментарий от Yustas

То, что ты хочешь, называется CD-пайплайн и делают его отдельные люди - DevOps инженеры.

И тут на сцену выходят SRE.

Коли таких под рукой нет, я бы рекомендовал завести всё это на, к примеру, Jenkins

Вот не надо плохого советовать. ТЫ разве видишь хоть слово про жаву? Я нет. В остальных случаях зачем держать лишний сервис на своем сапорте, лучше использовать облачный гитлаб и все такое.

stave ★★★★★ ()
Ответ на: комментарий от dhameoelin

Просто прочитай документацию.

почитал, да. как откатиться на предыдущую сборку, как посмотреть логи сборки, как устроить хранение последних 10-ти --- за 5 минут не нашел. а дженкинс это делает искаропки.

Rastafarra ★★★ ()
Ответ на: комментарий от Rastafarra

почитал, да. как откатиться на предыдущую сборку, как посмотреть логи сборки, как устроить хранение последних 10-ти --- за 5 минут не нашел. а дженкинс это делает искаропки.

Чётче формулируй ТЗ.

В твоём случае тебе в гитлабе только хуки нужны, которые будут Дженкинс дёргать на каждый чих, а он уже сам пусть всё разруливает.

dhameoelin ★★★★★ ()
Ответ на: комментарий от stave

Релиз инженеры сами разберутся, а разработчику проще будет собрать что-то на дженкинсе по мильену туториалов, чем заниматься разработкой пайплайна на гитлаб-ci.
Кстати, про CI там тоже ничего на было - только про CD.
Я лично задачу оркестрации релиза отлельно от разработки решал тулами типа ансибла, но тут человеку нужно с туториалами и вебмордой. Дженкинс подойдёт лучше в данном случае, так думаю.

Yustas ★★★★ ()
Ответ на: комментарий от dhameoelin

В твоём случае тебе в гитлабе только хуки нужны, которые будут Дженкинс дёргать на каждый чих, а он уже сам пусть всё разруливает.

и мы возвращаемся к моему линку, где вроде как именно это я и сделал, а ты возбухтел.

что не так-то? :)

Rastafarra ★★★ ()
Ответ на: комментарий от Yustas

Разработчику как раз проще написать код, чем по мильону мануалов тыкать пачку плагинов дженкинса, каждый из которых со своими тараканами. И не дай бог начать писать под дженкинс.

CD отлично решается гитлабом, авто деплой на тестовые стенды или ручные катки по кнопке - 1 строчка ямла. Уровень ниже - да хоть оставить текущие скрипты, судя по всему они свою задачу выполняют. Вопрос об управлении и удобстве.

stave ★★★★★ ()
Ответ на: комментарий от stave

Разработчику как раз проще написать код, чем по мильону мануалов тыкать пачку плагинов дженкинса, каждый из которых со своими тараканами. И не дай бог начать писать под дженкинс.

Ты про пайплайны или про олдовый дженкинс?

CD отлично решается гитлабом Вопрос об управлении и удобстве.

С вами невозможно спорить!

Yustas ★★★★ ()

в сети слишком много инструкций с разными подходами от которых пухнет голова

составь список решений, разбей на pros/cons и дай нам на обсуждение. а так, опять кулики и болота.

system-root ★★★★ ()