Организация правильной архитектуры?

Доброй день!

У меня есть проект, он состоит из frontend, backend, webhook, hasura, db
frontend, backend, webhook - в разных репозиториях
Я хочу подключить CI\CD gitlab

Вопрос стоит в том, где лучше билдить db, hasura, nginx
Можно их засунуть в docker-compose и в репозитории backend их билдить, а можно создать отдельный репозиторий с docker-compose где будут билдиться nginx, hasura, db

Есть ли еще варианты и как правильнее сделать?
  • Вопрос задан
  • 615 просмотров
Пригласить эксперта
Ответы на вопрос 2
Alex_Wells
@Alex_Wells
PHP/Kotlin
Имхо, вариант лучше всего - делить по апликухам. Одно приложение - один репозиторий. Внутри можно поделить на frontend, backend и docker папочки без проблем и любая нормальная ИДЕшка отлично даст указать модули по папкам.

Реальной нужды в разных репозиториях не вижу. А даже если бы вдруг и была - есть гит модули, в конечном итоге все равно структура будет как описал выше.
Ответ написан
Комментировать
dasha_programmist
@dasha_programmist
ex Software Engineer at Reddit TS/React/GraphQL/Go
Мне видится такая практика:
- infra-repo: инициализационные скрипты, docker-compose, настройки для nginx, elk и так далее
- repo per project: каждый проект имеет свой репо (бэкэнд, фронтенд, микросервис), в них уже лежат Dockerfile, .ci.yml настройка pipeline для данного проекта, описание шагов и так далее
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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