Локальный запуск экземпляров приложения
В ходе локальной разработки вы можете запускать экземпляры приложения из его корневой директории:
cartridge start [ИМЯ_ЭКЗЕМПЛЯРА...] [параметры]
Здесь [ИМЯ_ЭКЗЕМПЛЯРА...]
означает, что можно указать больше одного имени.
Если не указать ИМЯ_ЭКЗЕМПЛЯРА
, в список аргументов войдут все экземпляры, перечисленные в файле конфигурации экземпляров Cartridge. См. параметр --cfg
ниже.
Имя приложения (APP_NAME
) передается экземпляру во время запуска. По умолчанию значение переменной берется из поля package
в файле .rockspec
. Имя также можно указать с помощью параметра --name
(см. ниже).
--name |
Имя приложения. По умолчанию значение берется из поля package в файле .rockspec . |
--timeout |
Время, в течение которого ожидается запуск экземпляров в фоновом режиме. Указывается в секундах или в виде отрезка (72h3m0.5s ). Значение не может быть отрицательным. Если задать 0 , Tarantool будет бесконечно ожидать запуска экземпляров. По умолчанию — 60 секунд (1m0s ). |
-d, --daemonize |
Запуск экземпляра в фоновом режиме. Если задать этот параметр, Tarantool будет также ожидать, пока не выполнится скрипт инициализации приложения. Параметр удобно использовать, если init.lua требует долгой загрузки данных из снимка и Tarantool должен дождаться завершения запуска. Вы можете также передать этот параметр, если скрипт инициализации выдает ошибки, которые Tarantool должен обработать. |
--stateboard |
Запуск экземпляров, включая stateboard-экземпляр. Игнорируется, если задать параметр --stateboard-only . |
--stateboard-only |
Запуск stateboard-экземпляра. Если задать этот параметр, ИМЯ_ЭКЗЕМПЛЯРА... игнорируется. |
--script |
Точка входа в приложение, по умолчанию — init.lua в корневой директории проекта. script — также раздел файла .cartridge.yml . Узнайте больше о путях к файлам экземпляров. |
--run-dir |
Директория, где хранятся PID-файлы и файлы сокетов (по умолчанию ./tmp/run ). run-dir — также раздел файла .cartridge.yml . Узнайте больше о путях к файлам экземпляров. |
--data-dir |
Директория, в которой находятся рабочие директории экземпляров (по умолчанию ./tmp/data ). data-dir — также раздел файла .cartridge.yml . Узнайте больше о путях к файлам экземпляров. |
--log-dir |
Директория, где хранятся файлы журналов (по умолчанию ./tmp/log ). log-dir — также раздел файла .cartridge.yml . Узнайте больше о путях к файлам экземпляров. |
--cfg |
Путь к файлу конфигурации экземпляров (по умолчанию ./instances.yml ). cfg — также раздел файла .cartridge.yml . Узнайте больше о путях к файлам экземпляров. |
Команда start
также поддерживает глобальные параметры.
Команда cartridge start
запускает экземпляр Tarantool с принудительным использованием переменных окружения:
TARANTOOL_APP_NAME="<имя_приложения>"
TARANTOOL_INSTANCE_NAME="<имя_экземпляра>"
TARANTOOL_CFG="<cfg>"
TARANTOOL_PID_FILE="<run-dir>/<имя_приложения>.<имя_экземпляра>.pid"
TARANTOOL_CONSOLE_SOCK="<run-dir>/<имя_приложения>.<имя_экземпляра>.control"
TARANTOOL_WORKDIR="<data-dir>/<имя_приложения>.<имя_экземпляра>.control"
Если экземпляр запускается в фоновом режиме, передается также путь к notify-сокету:
NOTIFY_SOCKET="<data-dir>/<имя_приложения>.<имя_экземпляра>.notify"
cartridge.cfg()
использует переменные TARANTOOL_APP_NAME
и TARANTOOL_INSTANCE_NAME
, чтобы считывать конфигурацию экземпляра из файла, который указан в переменной TARANTOOL_CFG
.