@kogotag

Как организовать правильное взаимодействие контейнеров nginx, и node fronted (nginx virtual host), node backend (nginx reverse proxy)?

Я делаю проект, состоящий из Nginx, frontend, который при помощи вебпак собирает мне html и js файлы в отдельную папку, которую я хочу добавлять в location nginx, и бэкенд, который будет вероятно на ноде, и подключается через reverse proxy.

Вопрос состоит в том, как грамотно организовать контейнеризацию и хранение в репозиториях. Мне нужно это разворачивать на удалённом сервере, что я планирую делать через github-actions (очень хотелось бы, потому что я пока новичок, и такие вещи, как jenkins, я пока не освоил).

Так вот, стоит ли, к примеру, фронт и бэк побить на разные репозитории, настроить каждому отдельный воркфлоу? Стоит ли билдить фронтенд в контейнере, что очень хотелось бы, чтобы нода с зависимостями была изолирована от сервера? Как при этом перезапускать (и нужно ли) nginx в контейнере? Стоит ли вообще nginx в контейнер пихать, что тоже очень хотелось бы (при том, что я буду собирать его через make)?

Может, вообще было бы разумнее всё в одном репозитории хранить, но сделать несколько dockerfile, docker-compose?

Вопросы возникают в основном из-за отсутствия опыта и каши в голове. В самих принципах я более менее разобрался, настроив один github-actions, который разворачивает на моём сервере контейнер.

Хотелось бы получить развёрнутый ответ, чтобы привести все мысли в порядок =)
  • Вопрос задан
  • 101 просмотр
Пригласить эксперта
Ответы на вопрос 1
Maksclub
@Maksclub Куратор тега Веб-разработка
maksfedorov.ru
Стоит ли билдить фронтенд в контейнере, что очень хотелось бы, чтобы нода с зависимостями была изолирована от сервера?


стоит

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


лучше разнести, да, чтобы потом изменения фронта не тащили деплой фронта и наоборот, ну тут все и так понятно

Может, вообще было бы разумнее всё в одном репозитории хранить, но сделать несколько dockerfile, docker-compose?

это можно (иногда очень удобно, как в моем проекте, где всего бек сервиса и 1 фронт), но деплой и воркфлоу будут разные все равно

Стоит ли вообще nginx в контейнер пихать, что тоже очень хотелось бы (при том, что я буду собирать его через make)?

Да вполне, максимально близко к проду

Как при этом перезапускать (и нужно ли) nginx в контейнере?

Нжинкс сам не перезапускают, просто контейнер перезапустить
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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