Начало работы
Это руководство поможет вам запустить Apostol CRM -- бэкенд с 418 REST API эндпоинтами, OAuth 2.0 аутентификацией и движком рабочих процессов.
Быстрый старт с Docker
git clone --recurse-submodules https://github.com/apostoldevel/apostol-crm.git
cd apostol-crm/backend
./docker-build.sh
./docker-up.sh
Запускается пять сервисов: PostgreSQL 18, PgBouncer, Nginx, PgWeb и Backend.
| URL | Описание |
|---|---|
| localhost:8080 | Фронтенд |
| localhost:8080/docs | Swagger UI (418 эндпоинтов) |
| localhost:8081 | PgWeb -- администрирование БД |
Учётные данные по умолчанию: admin / admin
./docker-down.sh # остановить все сервисы
./docker-new-database.sh # пересоздать том PostgreSQL (деструктивно)
Первый API-запрос
# Проверка работоспособности
curl http://localhost:4977/api/v1/ping
# {"ok": true}
# Аутентификация
curl -X POST http://localhost:4977/oauth2/token \
-d 'grant_type=password&username=admin&password=admin&client_id=web'
# Получить список клиентов
curl http://localhost:4977/api/v1/client/list \
-H 'Authorization: Bearer eyJ...'
Сборка из исходников
Зависимости (Debian/Ubuntu):
sudo apt-get install build-essential libssl-dev libcurl4-openssl-dev \
libpq-dev zlib1g-dev make cmake gcc g++
Сборка:
git clone --recurse-submodules https://github.com/apostoldevel/apostol-crm.git
cd apostol-crm/backend
./configure
cmake --build cmake-build-release --parallel $(nproc)
sudo cmake --install cmake-build-release
Настройка базы данных:
echo '*:*:*:kernel:kernel' >> ~/.pgpass
echo '*:*:*:admin:admin' >> ~/.pgpass
echo '*:*:*:daemon:daemon' >> ~/.pgpass
chmod 600 ~/.pgpass
cd db/
./runme.sh --init
Полная версия доступна на английском языке: Getting Started (English).
Следующие шаги
- Архитектура -- как устроен Apostol CRM
- Создание сущности -- добавление своих бизнес-объектов
- Рабочие процессы -- настройка состояний и переходов
- REST-эндпоинты -- публикация API
- Справочник API -- все 418 эндпоинтов