Сборка и запуск
Все инструкции приведены для *nix-подобных систем.
Для ОС Windows инструкция примерно аналогична. Мы рекомендуем запускать бота в контейнере.
С использованием Docker
Для запуска проекта в контейнере необходимо:
-
Создать файл конфигурации, скопировав наш шаблон:
$ cp cmd/trade-bot/.env-example cmd/trade-bot/.env
-
Выставить базовые настройки (см. раздел "Конфигурация") любым удобным редактором, например, через vim:
$ vim cmd/trade-bot/.env
-
Запустить проект с использованием docker-compose:
$ docker-compose up --build
Из исходного кода
Для запуска проекта требуется компилятор Go версии 1.16 и выше:
-
Создать файл конфигурации, скопировав наш шаблон:
$ cp cmd/trade-bot/.env-example cmd/trade-bot/.env
-
Выставить базовые настройки (см. раздел "Конфигурация") любым удобным редактором, например, через vim:
$ vim cmd/trade-bot/.env
-
Экспортировать переменные окружения из конфига командой
$ export $(grep -v '^#' cmd/trade-bot/.env | xargs)
-
Собрать бинарный файл:
$ go build -v -o trade-bot ./cmd/trade-bot
-
Запустить торгового бота:
$ ./trade-bot
Инструкция по запуску trade-utils (см. раздел "Дополнительно") идентична в точности до имени исполняемого файла.
P.S. Данный воркфлоу можно значительно упростить с использованием IDE Goland.
Для разработчиков
В файле docker-compose.dev.yml добавлены контейнеры с Prometheus и Grafana, на которых построен мониторинг торгового процесс (см. раздел "Визуализация").
Чтобы их запустить, требуется:
-
Создать в корневой директории
prometheus.yml
, добавив в targets внутренний адрес торгового бота (по типу"trade_bot_1:8080"
) -
Запустить сервисы командой
$ docker-compose -f docker-compose.dev.yml up --build -d
-
Зайти на http://localhost:3000 и настроить Grafana с импортированным дашбордом и Prometheus в качестве Data Source