Запустите cMind локально 🖥️
Это самый быстрый способ увидеть cMind в реальности — полный экземпляр на вашей собственной машине. Возьмите кофе; вы, вероятно, будете подписаны перед тем как он остынет.
Работающее веб-приложение на localhost:8080, MCP-сервер на localhost:8081, база данных Postgres и локальный рабочий узел, готовый создавать и выполнять бэктесты cBots. Всё на вашей машине, всё ваше.
Перед началом вам нужна одна из:
- Только Docker → используйте вариант A (SDK .NET не требуется). Рекомендуется для первого взгляда.
- .NET 10 SDK + Docker → используйте вариант B, если хотите взломать код.
Оба пути кросс-платформа (Windows / macOS / Linux).
Вариант A — Docker Compose (SDK .NET не требуется)
Предусловие: Docker Desktop (или Docker Engine + плагин compose).
cp .env.example .env # редактируйте PG_PASSWORD, OWNER_EMAIL, OWNER_PASSWORD
docker compose up --build
- Веб пользовательский интерфейс: http://localhost:8080 (подпишитесь с владельцем из
.env; принуждается изменить пароль при первом входе). - MCP-сервер: http://localhost:8081/mcp.
- Данные Postgres сохраняются в томе
pgdata; схема автоматически мигрирует при запуске.
Веб-контейнер монтирует хост сокет Docker (/var/run/docker.sock), поэтому встроенный браузер конструктор и посеянный LocalNode создают + запускают контейнеры cTrader Console на вашей машине.
Примечания кросс-платформы
- Docker Desktop (Windows/macOS) открывает сокет на
/var/run/docker.sock— монтирование compose работает как есть. - Linux: убедитесь, что ваш пользователь может получить доступ к сокету, или запустите compose с достаточными привилегиями.
- Образ Web —
linux/amd64; на Apple Silicon Docker запускает его под эмуляцией.
Остановка и очистка:
docker compose down # сохранить данные
docker compose down -v # также удалить том базы данных
Вариант B — .NET Aspire (для разработки)
Предусловие: .NET 10 SDK + Docker.
dotnet run --project src/AppHost
Aspire координирует Postgres, Web, MCP, pgAdmin; подсоединяет строки подключения + OTLP; открывает приборную панель. Установите учетные данные владельца как параметры Aspire (OwnerEmail, OwnerPassword).
Запустите только веб-приложение против существующего Postgres:
dotnet run --project src/Web
Добавление рабочих узлов локально
Посеянный LocalNode уже запускает работу на вашей машине. Для упражнения автооткрытия локально, запустите агент узла, указывающий на Web приложение (смотрите обнаружение узлов) с NodeAgent:MainUrl=http://host.docker.internal:8080 и соответствующим JoinToken.
Устранение неполадок 🔧
Docker имеет мнения. Вот обычные подозреваемые:
| Симптом | Вероятная причина и исправление |
|---|---|
port is already allocated на 8080/8081 | Что-то другое использует порт. Остановите его или измените отображение в docker-compose.yml. |
| Web запускается, но сборки/бэктесты не удаются | Сокет Docker не смонтирован или недоступен. На Linux убедитесь, что ваш пользователь может достичь /var/run/docker.sock. |
permission denied на сокете (Linux) | Добавьте своего пользователя в группу docker (sudo usermod -aG docker $USER) и повторно войдите или запустите с достаточными привилегиями. |
| Очень медленный первый запуск | Первая сборка вытягивает образы и компилирует — последующие запуски намного быстрее. На Apple Silicon образ Web linux/amd64 работает под эмуляцией. |