Разделы документации

Параметры install.sh и установка в терминале

Все параметры установщика, настройка без браузера, свой каталог установки и команда trackerctl.

Установщик install.sh запускается на сервере через sudo. Без параметров он готовит сервер и печатает ссылку на мастер первого запуска — этот путь описан на странице Установка. Параметры нужны, чтобы настроить трекер в терминале, выбрать другой каталог или задать IP мастера вручную.

Общие правила

  • Параметры пишутся после имени файла: sudo bash install.sh --path /opt/micator.
  • Параметр со значением требует значение. Иначе установщик отвечает «Нет значения для …».
  • На неизвестный параметр установщик отвечает «Неизвестный параметр: …» и ничего не делает.
  • Любой из параметров --headless, --panel, --track, --email, --admin-email, --restore-env включает установку в терминале. Мастер при этом не запускается.
  • При повторном запуске указывайте те же параметры, что в первый раз.

Таблица параметров

ПараметрЗначениеЧто делает
--headlessнетНастройка в терминале вместо мастера. Домены, email и логин установщик спросит сам
--panelдоменДомен панели, например panel.example.com
--trackдоменДомен трафика для ссылок кампаний и постбеков, например track.example.com. В мастере это поле Домен трекинга. Должен отличаться от домена панели
--emailemailАдрес для HTTPS-сертификатов: латинские буквы, цифры, знаки _ . + - и обязательный @, до 200 символов
--admin-emailлогинЛогин владельца. Не обязательно email: латинские буквы, цифры и знаки _ . + @ -, до 200 символов
--pathкаталогКаталог установки вида /opt/имя. По умолчанию /opt/tracker
--setup-ipIPv4Адрес, по которому откроется мастер. По умолчанию установщик определяет его сам
--restore-envфайлФайл .env.production из резервной копии: новая установка получает прежние серверные ключи. См. Восстановление на новом сервере
--verify-onlyнетСкачивает выпуск, проверяет подпись и состав, ничего не ставит. Права root не нужны. См. раздел «Проверка выпуска без установки» на странице Установка
--update-controllerнетОбновляет только службу установки на работающем трекере. См. Обновление службы установки (контроллера)
--bundleадрес или файлОткуда взять выпуск: адрес https://… или файл на сервере. По умолчанию — адрес, записанный в install.sh
--signatureадрес или файлПодпись выпуска. По умолчанию — адрес или имя файла выпуска с окончанием .sig
--public-keyфайлОткрытый ключ для проверки подписи. По умолчанию — ключ, записанный в install.sh. С --update-controller не используется: подпись проверяется ключом, закреплённым за установкой
--help, -hнетПечатает краткую справку по параметрам

Домены указываются без https://, порта и пути, международные имена — в punycode. По сети выпуск загружается только по HTTPS: на другой протокол установщик отвечает «Загрузка разрешена только по HTTPS.»

Установка в терминале

Понадобятся сервер и два домена, как для обычной установки, — см. Требования к серверу и подготовка. DNS-записи обоих доменов должны вести на IP сервера до запуска.

  1. Скачайте установщик первой командой.
  2. Запустите его с параметром --headless второй командой.
  3. Ответьте на четыре вопроса: Домен панели, Домен трафика, Email для HTTPS-сертификатов, Логин владельца.
  4. Дождитесь строки «Готово. Панель: https://panel.example.com».
bash
curl -fsSLo install.sh https://install.micator.com/install.sh
sudo bash install.sh --headless

Чтобы установщик ничего не спрашивал, передайте все четыре значения параметрами. Параметр --headless тогда не нужен:

bash
sudo bash install.sh --panel panel.example.com --track track.example.com --email [email protected] --admin-email admin

Если указана только часть значений, остальные установщик спросит в терминале.

По ходу работы установщик печатает: «Загружаю подписанный выпуск…», «Подготавливаю Docker…», «Загружаю готовые образы…», «Запускаю базы, панель и трекер…». В конце — три строки:

text
Готово. Панель: https://panel.example.com
Доступ владельца сохранён только для root: /opt/tracker/owner-access.txt
Проверка установки: sudo trackerctl check

Если установка остановилась с ошибкой, устраните причину и повторите ту же команду с теми же значениями. Принятые домены, email и логин установщик сохраняет и заново не спрашивает. Если ошибка случилась раньше — например, домен ещё не разрешается в DNS, — вопросы будут заданы снова.

Отличия от мастера

ЧтоМастер в браузереУстановка в терминале
Пароль владельцаЗадаёте самиСоздаётся случайный, 64 символа. С --restore-env берётся из файла копии
Название команды и логотипЗадаются на шаге 2Не задаются. В панели остаётся надпись Micator. С --restore-env берутся из файла копии
Ключ лицензииВводится на шаге 2Вводится в панели после первого входа
Проверка доменовДо выпуска сертификатов мастер проверяет, что домены ведут на этот серверДо установки проверяется только наличие доменов в DNS. HTTPS проверяется в конце
Восстановление из копииБлок Восстановить из резервной копииПараметр --restore-env, затем восстановление данных в панели

После установки войдите в панель:

  1. Прочитайте доступ владельца на сервере командой ниже. В файле три строки: «Панель», «Логин» и «Пароль».
  2. Откройте https://panel.example.com/login.
  3. Введите Логин и Пароль из файла.
  4. Нажмите Войти.
bash
sudo cat /opt/tracker/owner-access.txt

Если открылся экран «Доступ к трекеру закрыт», введите ключ в поле Ключ лицензии и нажмите Активировать — см. Получение ключа и активация.

Внимание.

В owner-access.txt записан пароль владельца. Сохраните его в менеджере паролей и не передавайте файл другим людям.

Другой каталог установки

По умолчанию трекер ставится в /opt/tracker. Параметр --path задаёт другой каталог:

bash
sudo bash install.sh --path /opt/micator
  • Каталог должен иметь вид /opt/имя. В имени допустимы латинские буквы, цифры, _ и -.
  • Каталог должен быть пустым или отсутствовать. Установщик создаст его сам. Символическая ссылка не принимается.
  • Параметр работает и с мастером, и с установкой в терминале.
  • Файлы setup-access.txt, owner-access.txt и остальные файлы установки лежат в этом каталоге. Базы и загруженные страницы хранятся в томах Docker, а не в нём.
  • При повторном запуске установщика и при --update-controller указывайте тот же --path.
  • Вторую установку на тот же сервер параметр не добавляет: установщик найдёт прежнюю и остановится.

Команде trackerctl каталог указывать не нужно: она запоминает его при установке.

IP мастера вручную

Мастер открывается по публичному IPv4 сервера. Установщик ищет этот адрес на сетевых интерфейсах сервера. Если публичного адреса на них нет, установщик останавливается: «Не удалось определить публичный IPv4. Передайте --setup-ip IP сервера.»

bash
sudo bash install.sh --setup-ip 203.0.113.10
  • Принимается только публичный IPv4. На частный адрес и на IPv6 установщик отвечает тем же сообщением.
  • Мастер отвечает только по этому адресу и по домену панели.
  • Адрес закрепляется при подготовке мастера. После появления ссылки на мастер повторный запуск с другим --setup-ip его не меняет.
  • При установке в терминале параметр не используется.

Команда trackerctl

Установщик ставит на сервер команду trackerctl. При установке с мастером она появляется после подготовки сервера, при установке в терминале — после того, как трекер запущен и прошёл проверку готовности.

КомандаЧто печатает
sudo trackerctl status«Версия: …; этап: …»
sudo trackerctl checkТо же и один раз проверяет готовность. Успех — «Сервисы и HTTPS отвечают.» Если что-то не готово — «Не готовы: …» с названием того, что не ответило

Запускайте check после запуска трекера. Проверка выполняется на самом сервере и не показывает, открыты ли порты 80 и 443 снаружи. Если предыдущий запуск установщика в терминале закончился ошибкой, обе команды после строки с версией печатают «Последняя попытка прервалась на этом этапе.» Разбор ответов — в разделе Где смотреть состояние установки.

Значения этапа

ЭтапЧто означает
awaiting_setupСервер подготовлен, мастер ждёт настройки в браузере
startingНастройки сохранены, запускаются базы, панель и трекер
readyТрекер установлен и прошёл проверку готовности

При установке в терминале команда появляется уже после проверки готовности, поэтому показывает ready.

Промежуточные этапы в файле install-state.json

Этап записывается в файл install-state.json в каталоге установки. До появления команды trackerctl в нём бывают значения:

  • preparing — установщик готовит сервер для мастера;
  • new, files, images, isolation — шаги установки в терминале: настройки приняты, копируются файлы, загружаются образы, настраиваются сетевые ограничения PHP, геобаза и служба установки.

Если не получилось

Сообщение в терминалеПричинаЧто сделать
Нет терминала: передайте домены, email и логин параметрами.Установщик запущен без интерактивного терминала и не может задать вопросыПередайте --panel, --track, --email и --admin-email
Не заполнено: …На вопрос дан пустой ответПовторите команду и введите значение
Для панели и трафика нужны разные домены.Указан один и тот же доменУкажите два разных домена
Нужен домен без протокола, порта и пути; международные имена — в punycode.В домене есть https://, порт, путь или недопустимые знакиВведите только имя, например panel.example.com
Нужен домен, а не IP-адрес.Вместо домена указан IPУкажите домен
Недопустимое значение: email. или Недопустимое значение: логин.В значении есть пробел или недопустимый знак, либо оно длиннее 200 символовИспользуйте латинские буквы, цифры и знаки _ . + @ -
Укажите email для сертификатов.В email нет знака @Укажите адрес вида [email protected]
Домен ещё не разрешается в DNS: …У домена нет DNS-записи или она ещё не обновиласьДобавьте A-запись на IP сервера, подождите и повторите команду
Путь установки должен иметь вид /opt/имя без пробелов. или Путь установки должен иметь вид /opt/имя.В --path указан каталог другого видаУкажите путь вида /opt/micator
Параметры повторного запуска отличаются от начатой установки.При повторе изменены домены, email или логинПовторите с прежними значениями или только с --headless: установщик возьмёт сохранённые
Начата установка через терминал. Продолжите прежнюю команду.Повтор запущен без параметров установки в терминалеПовторите прежнюю команду или запустите с --headless

Сообщение «Не готовы: …» в конце установки разобрано в разделе Сервисы не готовы, остальные — на странице Ошибки установки и их устранение. Где лежат файлы и какие службы созданы — на странице Файлы установки, порты, службы и журналы.

Обновлено Нужна помощь? ↗