acterics / group-project

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Group Project

Сервисы

Config Service (IN DOCKER-COMPOSE)

Сервис запускаеться первым и раздает конфиг файлы всем остальным сервисам. Конфиги должны быть в отдельном репозитории, но для удобства разработки на данный момент они в локальные

Registry Service (IN DOCKER-COMPOSE)

Запускаеться сразу после конфига и только после него запускаються остальные сервисы, которые будут зарегестрированы в текущем. Eureka Github

Eureka Spring Docs

Auth Service DEVELOPING

OAuth2 Server

Gateway Service (IN DOCKER-COMPOSE)

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

Product Service (IN DOCKER-COMPOSE)

Сервис работающий с товарами

Сервис работающий а аккаунтами пользователей

Сервис обрабатывающий флоу Order => Purchase => Delivery

Запуск системы

Docker

Docker version 17.09.0-ce, build afdb6d4

docker-compose version 1.17.0, build ac53b73

Docker Install

Docker Compose Install

  • Делаем форк репозитория

  • Создаём свою ветку из dev

  • Билдим исходники

    • При наличии Gradle 4.3.1

      gradle build

    • Без Gradle

      Делаем файл gradlew исполняемым

      ./gradlew build

  • Создаем в корне файл .env

  • Заносим значения констант из .env-example

  • Запускаем Docker Compose

    docker-compose up --build

  • Запуск отдельного сервиса

    docker-compose up --build <service-name>

    service-name можно найти в docker-compose.yml

    при заупуске отдельного сервиса нужно учитывать его конфиг depends-on

  • Разрабатываем

  • Делаем пул-реквест в dev

Запустяться только те сервисы, которые отмечены как IN DOCKER-COMPOSE

Локальный запуск

Gradle 4.3.1

Gradle Install

  • Делаем форк из репозитория
  • Создаем свою ветку из dev-local
    • Запуск вместе с конфиг сервером

      Заходим в директорию конфигов

      Изменяем все переменные среды на локальные(значения ваших локальных переменных не должны будут попасть в коммит)

      gradle :config:bootRun

      gradle :<module-name>:bootRun

    • Запуск без конфиг сервера()

      Переносим содержимое нужного конфига в
      директории конфигов к соответствующему bootstrap.yml в /src/main/resources/
      (В пул реквесте все должно быть на своих местах)

      gradle :<module-name>:bootRun

  • Разрабатываем
  • Делаем пул реквест в dev-local

About


Languages

Language:Java 75.2%Language:Kotlin 24.8%