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-пакетом и встраивается в основной сервис.