Backend корпоративного портала: социальная сеть
- 🧑💼 Профили сотрудников и организационная структура
- 🏢 Подразделения, иерархия, привязка к проектам
- 📝 Посты и комментарии, лайки, медиа
- 📁 Интеграция с MinIO для хранения файлов
- 🔐 JWT-аутентификация и авторизация
- 📊 Управление навыками, компетенциями, участием в проектах
- ⚙️ REST API для frontend-интеграции
+------------------+ +------------------+ +-----------------+
| Spring Boot API | <---> | PostgreSQL DB | <---> | pgAdmin |
+------------------+ +------------------+ +-----------------+
| ↑
↓ |
+------------------+ +------------------+
| MinIO (S3 API) | <---> | Frontend |
+------------------+ +------------------+
- 📘 Spring Boot — основная логика API
- 🐘 PostgreSQL — база данных
- 📂 MinIO — файловое хранилище
- 🧑💻 pgAdmin — управление БД через UI
- 🐳 Docker Compose — запуск всех сервисов в контейнерах
git clone https://github.com/WebStormUdv/UdvCorpSocialBackend.git
cd UdvCorpSocialBackend
cp .env.example .env
# Отредактируйте .env с вашими настройками
docker-compose up -dПосле запуска система будет автоматически наполнена примерными тестовыми данными. В базу добавлены 3 пользователя с разными ролями:
| Пароль | Роль | |
|---|---|---|
| ivanaa.ivanov@company.com | SecurePass123! | работник |
| user@mail.ru | SecurePass123! | работник |
| admin@mail.ru | SecurePass123! | админ |
Вы можете использовать эти учётные данные для входа и тестирования API (например, через Swagger UI).
Чтобы остановить:
docker-compose downУказываются в .env:
UDV_DB_URL=jdbc:postgresql://postgres:5432/udv_corp_social
UDV_DB_USER=postgres
UDV_DB_PASSWORD=PostgresPassword
JWT_SECRET=SuperSecretJwtKey
JWT_EXPIRATION=86400000
Документация Swagger автоматически разворачивается вместе с API:
🔗 http://localhost:8080/swagger-ui/index.html
- Используется JWT Bearer Token (введите access_token после логина)
- Полное описание доступных эндпоинтов и моделей
| Сервис | URL | Доступ / Учётные данные |
|---|---|---|
| API Server | http://localhost:8080 | — |
| Swagger UI | Swagger | — |
| pgAdmin | http://localhost:5050 | admin@udvcorp.com / admin123 |
| MinIO | http://localhost:9000 | minioadmin / minioadmin123 |
| MinIO Console | http://localhost:9001 | Для администрирования бакетов |
| Grafana | http://localhost:3001 | admin/admin123 |
Для полного сброса состояния, включая тома и кэш Docker:
docker-compose down -v