Graduation project

Дипломный проект, пока в зайчаточном состоянии, но потихоньку пилится.

Суть: API для управления хостингом

В главных ролях:

  • PHP 7.2
  • MySQL 5.7
  • Symfony 4.1
  • Redis
  • Nginx
  • JWT
  • GRPC + Protobuf
  • Graylog
  • Docker

Howto:

Файлы для запуска проекта находятся в каталоге docker. Все описанные далее команды выполняются в нём.
Конфиги Nginx для хоста — в application/nginx-config (впрочем, кроме проксирования запросов в контейнеры они ни хрена не делают)
Урлы для API: public.api.local и internal.api.local. Сменить их можно в application/.env. Упаси Вас Ктулху делать это где-то ещё.

Собрать контейнеры (при первом запуске этот этап будет выполнен автоматически):

docker-compose build

Обычный запуск проекта:

docker-compose up -d

Для тестирования необходимо также поднять отдельный контейнер с тестовой базой:

docker-compose -f docker-compose.yml -f docker-compose-test.yml up -d

Просмотр логов контейнера:

docker-compose logs -f *имя_сервиса*

Или

docker logs -f *имя контейнера*

Остановить и удалить все контейнеры:

docker-compose down

Если запущен контейнер с тестовой базой:

docker-compose -f docker-compose.yml -f docker-compose-test.yml down

Что есть сейчас

  • Регистрация
  • Аутентификация (реализация через Security Bundle + JWT)

Tips