/eapteka

Проект бэкенд сервиса, разработанный на хакатоне Eapteka

Primary LanguageGo

eapteka

Бэкенд сервиса разработанного по заданию на хакатоне Eapteka.

Сборка и деплой проекта

Для сборки и деплоя проекта необходимы docker и docker-compose.

Инициализируйте git-подмодуль с фронтендом проекта. Для этого введите команду в корне проекта:

git clone --recurse-submodules

Далее для запуска сборки и деплоя введите команду в корне проекта:

docker-compose up -d --build 

Проект должен быть доступен по адресу http://127.0.0.1:10000.

Для загрузки тестовых данных в базу данных введите команду:

docker exec eapteka /usr/bin/eapteka-data-loader

Схема базы данных

Схема базы данных

Папки и go-пакеты сервиса

cmd/eapteka

Основной код сервиса. Инициализирует соединение базой данных, выполняет миграцию, запускает веб-сервер.

cmd/eapteka-data-loader

Загрузчик тестовых данных, которые будут отображаться в прототипе фронтенда сервиса.

data

Go-пакет с данными, которые встраивается в загрузчике тестовых eapteka-data-loader данных при его компиляции.

ent

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

filesystem

Go-пакет, которые содержит немного модифицированный middleware для веб-сервера.

migrations

Go-пакет с миграциями базы данных, которые встраиваются в основный исполняемый файл сервиса для инициализации схемы БД.

pics

Go-пакет с картинками продукции из тестовых данных, которые встраивается в основной сервис.

ui

Git-подмодуль, который содержит фронтенд сервиса. Так-же является Go-пакетом и встраивается в основной сервис.