Быстрый старт
Установка и запуск Barfinex Provider
Начните с развёртывания Barfinex Provider — сервиса рыночных данных и расширенного API для работы с вашим торговым счётом.
🚀 Быстрый запуск провайдера
В этом разделе мы соберём минимальный стенд: подготовим, запустим и проверим, что контейнеры поднялись, а API провайдера доступен по указанному адресу.
Здесь приведен минимальный путь «с нуля до работающего сервиса».
💡 Требования: установлен Docker и Docker Compose, доступ к терминалу, права на запуск контейнеров.
1. Что такое Docker Compose и зачем он нужен
Для развёртывания Barfinex Provider (локально или на сервере) мы используем файл docker-compose.yml.
Docker Compose — это инструмент, который позволяет описать несколько связанных сервисов (Barfinex Provider, MongoDB, Redis, Portainer и т.д.) в одном YAML-файле и запускать их одной командой:
docker compose up -d
В docker-compose.yml описано:
- какие контейнеры поднять (Barfinex Provider, Mongo, Redis и инструменты для администрирования);
- какие порты пробросить наружу;
- какие переменные окружения передать;
- какие конфиги и данные монтировать в контейнеры.
Подробный разбор всех полей и сервисов см. на отдельной странице внутри этого файла:
👉 Разбор docker-compose.yml для Barfinex Provider
2. Получить актуальный docker-compose и исходный код
Рекомендуемый способ — взять свежую версию из открытого репозитория barfinex/app-provider.
Так вы одновременно получаете:
- актуальный
docker-compose.yml; - исходный код Barfinex Provider;
- примеры конфигурации и структуру проекта.
git clone https://github.com/barfinex/app-provider.git cd app-provider
В корне репозитория вы найдёте файл docker-compose.yml, который используется в шагах ниже.
3. Настройка окружения (.env)
Создайте файл .env на основе шаблона:
cp .env.example .env
Откройте .env в любом редакторе и заполните ключевые переменные:
NODE_ENV=production # Подключение к MongoDB MONGO_HOST=mongodb://mongo:27017 # Подключение к Redis REDIS_HOST=redis://redis:6379 # Ключи доступа к Binance BINANCE_API_KEY=your_key BINANCE_API_SECRET=your_secret TESTNET_BINANCE_SPOT_KEY=your_testnet_key TESTNET_BINANCE_SPOT_SECRET=your_testnet_secret
💡 Имена хостов (
mongo,redis) должны совпадать с названиями сервисов вdocker-compose.yml.
Подробное описание всех переменных окружения смотрите в README репозитория и комментариях к.env.example.
4. Запуск Barfinex Provider через Docker Compose
Убедитесь, что вы находитесь в корне проекта (app-provider), где лежит docker-compose.yml:
docker compose up -d
Флаг -d запускает все сервисы в фоне.
5. Проверить, что всё запустилось
Посмотреть статусы контейнеров:
docker compose ps
Ожидаемый результат — все сервисы в статусе Up, например:
NAME IMAGE STATUS PORTS provider ghcr.io/barfinex/provider:latest Up 0.0.0.0:3001->3001/tcp mongo mongo:6 Up 0.0.0.0:27017->27017/tcp mongo-express mongo-express:latest Up 0.0.0.0:8081->8081/tcp redis redis:7 Up 0.0.0.0:6379->6379/tcp redis-commander rediscommander/redis-commander Up 0.0.0.0:8082->8082/tcp portainer portainer/portainer-ce Up 0.0.0.0:9000->9000/tcp postgres postgres:15 Up 0.0.0.0:5432->5432/tcp
6. Просмотр логов Barfinex Provider
Для оперативной диагностики используйте:
docker compose logs -f provider
-f— потоковый вывод логов в реальном времени;- по логам можно быстро понять, на каком этапе инициализации возникла проблема
(HTTPS, конфиг, Redis, Binance, WebSocket и т.д.).
Подробную расшифровку сообщений логов см. ниже в разделе
👉 Подробное объяснение логов Barfinex Provider
🧩 Структура запуска Barfinex Provider
При старте Barfinex Provider проходит несколько стадий инициализации:
| Этап | Компонент | Назначение |
|---|---|---|
| 1️⃣ | HTTPS Initialization | Загрузка SSL-сертификатов и включение TLS |
| 2️⃣ | Configuration Load | Загрузка и валидация JSON-конфигов |
| 3️⃣ | Dependency Graph | Инициализация NestJS модулей |
| 4️⃣ | Redis Connection | Подключение к шине событий |
| 5️⃣ | Binance API Setup | Проверка ключей и пинг API биржи |
| 6️⃣ | Subscriptions | Регистрация внутренних каналов и подписок |
| 7️⃣ | Application Ready | REST + WebSocket серверы активны |
Эти стадии отражаются в логах, что облегчает отладку и контроль в CI/CD.
📊 Studio Barfinex: следующий шаг после установки Provider
Запущенный Barfinex Provider — это надёжный бэкенд, но сам по себе он остаётся «чёрным ящиком» на сервере.
Studio Barfinex решает эту проблему:
- даёт наглядный мониторинг статуса Provider (онлайн/офлайн, версия, аптайм);
- позволяет визуально смотреть данные, которые отдаёт Provider (потоки котировок, события, ошибки);
- помогает диагностировать проблемы: сразу видно, где сбой — в подключении к бирже, конфигурации или инфраструктуре;
- объединяет несколько инстансов Provider (testnet/prod, разные биржи) в единую панель управления.
После того как вы:
- настроили
.env, - подняли стенд через
docker compose up -d, - убедились по логам, что все стадии инициализации прошли успешно,
рекомендуется зарегистрировать этот Provider в Studio Barfinex и наблюдать за ним уже через удобный веб-интерфейс.
Подробная инструкция по подключению:
👉 Регистрация Provider в Studio Barfinex
Запуск Barfinex Provider — это по сути точка входа в собственную экосистему алгоритмической и количественной торговли.
С этого момента у вас есть свой источник рыночных данных и управляемый API, на котором можно строить стратегии, эксперименты и боевые торговые решения.
Пусть Barfinex Provider станет для вас надёжным «двигателем» инфраструктуры,
а Studio Barfinex — удобной кабиной пилота, где видно всё: от состояния подключений до поведения стратегий в реальном времени.
Желаем вам стабильного провайдера, чистых логов, понятных сигналов и осознанных торговых решений.
Пусть каждая новая версия конфига и каждая доработка стратегии приближает вас к более уверенной, системной и прибыльной торговле.