Подключение к серверу Mockarty
На этой странице объясняется, как Mockarty CLI определяет, к какому серверу подключаться, и как переопределить выбор для локальной разработки, self-hosted-развёртывания или работы в air-gapped-среде.
Кратко. По умолчанию
mockarty-cliподключается к локальному инстансу Mockarty (http://localhost:5770). Чтобы использовать другой сервер: передайте--server <url>в команду, экспортируйтеMOCKARTY_SERVER=<url>или сохраните URL черезmockarty-cli config set-context <name> --server <url>.
Как разрешается URL сервера
Перед каждой командой CLI проходит цепочку из четырёх источников. Побеждает первое непустое значение.
| # | Источник | Перебивает… | Типичное применение |
|---|---|---|---|
| 1 | флаг --server <url> |
всё ниже | Разовый запуск, CI/CD job |
| 2 | переменная окружения MOCKARTY_SERVER |
файл + default | Скрипты для конкретной оболочки, Docker-контейнеры |
| 3 | поле server_url в ~/.mockarty/config.json |
только default | Постоянная личная настройка |
| 4 | URL, зашитый в бинарник (http://localhost:5770) |
— | Свежая установка без настройки |
Старая переменная MOCKARTY_SERVER_URL по-прежнему работает как алиас MOCKARTY_SERVER — старые CI-скрипты не сломаются. Если установлены обе, побеждает MOCKARTY_SERVER.
Типовые сценарии
1. Установка по умолчанию — локальный инстанс
Сразу после установки CLI первая же команда работает с локальным инстансом Mockarty:
mockarty-cli auth login
# Сервер: http://localhost:5770
# Запрашиваем у сервера Mockarty доступные методы аутентификации…
CLI печатает разрешённый URL до запуска OAuth-флоу — чтобы вы могли убедиться, что ключ улетает туда, куда нужно. Если URL выглядит неправильно, прервите Ctrl-C и перезапустите с явным --server <url-вашего-сервера> (или укажите свой self-hosted инстанс — см. ниже).
2. Локальная разработка с запущенным инстансом Mockarty
Большинство разработчиков держит локальный admin-node на http://localhost:5770. Чистый способ — переменная окружения на сессию:
export MOCKARTY_SERVER=http://localhost:5770
mockarty-cli auth login
# Сервер: http://localhost:5770
Или поштучно, без правки окружения:
mockarty-cli --server http://localhost:5770 auth login
3. Self-hosted корпоративный Mockarty
Долгоживущий персональный default сохраняется в ~/.mockarty/config.json и переживает перезапуски shell’ов, контейнеров и системы:
mockarty-cli config set-context corp --server https://mockarty.internal.corp
mockarty-cli auth login
После этого любая последующая команда mockarty-cli mock list / mockarty-cli run / mockarty-cli ... автоматически идёт на корпоративный сервер — без флага и без env-переменной.
4. Air-gapped и переключение между серверами
Если вы часто переключаетесь между двумя-тремя серверами, удобнее держать env-var в ~/.bashrc / ~/.zshrc, чтобы каждая новая оболочка стартовала с известным таргетом:
# ~/.bashrc
export MOCKARTY_SERVER=https://mockarty.internal.corp
# Разовый override для одного CI-шага:
MOCKARTY_SERVER=http://localhost:5770 mockarty-cli mock list
Проверка активного сервера
mockarty-cli config view показывает итоговую конфигурацию, которой реально пользуется CLI:
mockarty-cli config view
Поле server_url отражает всю цепочку приоритетов — флаг поверх env, env поверх файла, файл поверх зашитого default. Если что-то выглядит неожиданно, этот вывод — источник правды.
Зачем дефолт указывает на локальный инстанс
Свежая установка без флага, без env, без файла всё равно имеет осмысленный и известный таргет: локальный инстанс Mockarty на http://localhost:5770. Новый пользователь может поднять локальный сервер и сразу запустить mockarty-cli auth login, не зная заранее ни одного URL. Существующие пользователи с корпоративной конфигурацией не ощущают изменений — их override (URL self-hosted-сервера) стоит выше дефолта в цепочке.
Зашитый default можно переопределить на этапе сборки, поэтому кастомная сборка может поставляться с другим известным таргетом; цепочка приоритетов выше работает поверх любого такого default.
См. также
- Руководство по CLI — полный справочник команд
- Быстрый старт — онбординг за пять минут
- CLI в контейнере — паттерны Docker / Kubernetes
- Полезные функции и советы — почему в остальных доках используется placeholder
localhost:5770