third commit

This commit is contained in:
Дмитрий Мамедов
2026-06-10 17:01:10 +03:00
parent d393cbe1db
commit 00919968f2
21 changed files with 721 additions and 274 deletions

View File

@@ -42,38 +42,36 @@ Self-hosted SSO / OIDC-сервис — аналог Keycloak / Яндекс ID.
- `/revoke`
- PKCE support
## Быстрый старт
## Быстрая установка (чистый сервер — всё включено)
### 1. Инфраструктура
**Одна команда — установит Node.js 22, Docker, сам сервис и запустит:**
```bash
curl -fsSL https://github.com/ssomvk/sso-service/raw/main/install.sh | bash
```
Скрипт автоматически:
1. Определяет ОС (Ubuntu/Debian/RHEL/CentOS/Fedora)
2. Устанавливает **Docker** + **Docker Compose plugin** (если нет)
3. Устанавливает **Node.js 22 LTS** (через NodeSource или nvm)
4. Скачивает SSO Service в `~/sso-service`
5. Генерирует `.env` со случайными JWT-секретами
6. Запускает PostgreSQL, Redis, RabbitMQ (ждёт готовности)
7. Устанавливает npm-зависимости, Prisma client, применяет миграции
8. Сидирует БД (администратор и тестовый OAuth-клиент)
9. Собирает и запускает сервис (PM2 или background)
**Через 2-3 минуты сервис доступен:** http://localhost:3000
### Ручная установка (если нужен контроль)
```bash
docker compose up -d
```
### 2. База данных
```bash
npx prisma db push
```
### 3. Тестовые данные
```bash
npx ts-node prisma/seed.ts
```
Создаёт:
- **Admin:** `admin@sso.local` / `admin123!`
- **OAuth Client:** `test-client` (секрет в консоли)
### 4. Запуск
```bash
npm run start:dev
```
Сервис: `http://localhost:3000`
## API Endpoints
| Method | Path | Auth | Description |