Skip to content

CheesyTech/basic-microservice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Описание папок/Архитектура:

  • build - папка для deploy-конфигов, Docker-files
  • cmd - для запуска исполняемых файлов, в нашем случае - app/main.go является входной точкой. В нем мы создаем config и прокидываем в app.Run.
  • docs - сгенерированная документация.

  • internal - внутренниий неимпортируемый код:
  • -> app - содержит метод Run, в котором принимает config, настраивает наше приложение.
  • -> config - содержит конфиги для приложения, http/ampq-серверов и т.п.
  • -> entity - сущность, которая переходит между слоями и может изменять свое состояние.
  • -> repository - работа с базой данных.
  • -> service - содержит бизнес-логику, получает данные из repository
  • -> transport - содержит папки для транспорта данных и похож на controller. Например: транспорт по http, ampq, grpc и т.д.
  • -> -> http - транспорт данных(ендпоинты) по http.
  • -> -> -> form - Сущности для загрузки и валидации данных.
  • -> -> ampq - транспорт по ampq.

  • migrations - содержит файлы миграции для базы данных.
  • pkg - содержит пакеты, которые могут быть импортированны во вне. Например httpserver.

Пакеты для работы

  • Gin Framework
  • GORM ORM

Запуск локального окружения

  • docker-compose --env-file ../../.env.example up -d

About

Just a basic template for a Go project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published