.. _server_quick_start: Быстрый старт ============== Предварительные требования -------------------------- Перед установкой убедитесь, что: 1. Сервер работает на поддерживаемой платформе: - **Linux amd64** (x86_64) -- рекомендуется для production - **Linux arm64** (aarch64) -- AWS Graviton, Oracle Cloud Ampere, Raspberry Pi и т.п. 2. Установлен **Docker Engine**: .. code-block:: bash curl -fsSL https://get.docker.com | sh systemctl enable --now docker 3. Доступно не менее **16 ГБ** ОЗУ для Community (**24–32 ГБ** для Enterprise) и **50 ГБ** дискового пространства. 4. Имеется **root-доступ** (или возможность выполнения ``sudo``). 5. Порты **80** и **443** свободны. Онлайн-установка ----------------- Самый быстрый способ установить Citeck -- выполнить одну команду: .. code-block:: bash curl -fsSL https://github.com/Citeck/citeck-launcher/releases/latest/download/install.sh | bash Скрипт ``install.sh`` выполняет минимальные действия: - Скачивает бинарный файл для вашей архитектуры - Проверяет SHA256-контрольную сумму - Запускает ``citeck install`` -- интерактивный мастер настройки Интерактивный мастер установки ------------------------------- .. note:: Команда ``citeck install`` -- это **интерактивный TUI-мастер** и требует настоящего терминала (``tty``). Для автоматизированного/неинтерактивного развёртывания встроенного режима пока нет; это планируемая функция -- если она вам нужна, создайте issue в `репозитории проекта `_. .. note:: Нажатие ``Ctrl+C`` на любом шаге **до** шага 7 («Запись конфигурации») завершает мастер, не изменяя файловую систему. Если прервать мастер позже, проверьте каталог ``/opt/citeck/conf/`` на наличие частично записанных файлов (``namespace.yml``, ``daemon.yml``) и при необходимости удалите их перед повторным запуском ``citeck install``. После запуска ``citeck install`` откроется пошаговый мастер: **1. Выбор языка** Доступно 8 языков интерфейса: русский, английский, китайский, испанский, немецкий, французский, португальский, японский. Все последующие сообщения будут на выбранном языке. .. code-block:: text Language / Язык / 语言 > en (English) ru (Русский) zh (中文) es (Español) de (Deutsch) fr (Français) pt (Português) ja (日本語) **2. Приветствие** Информационный экран с описанием шагов установки: - Создание конфигурации платформы (``namespace.yml``) - Создание конфигурации демона (``daemon.yml``) - Установка systemd-сервиса - Запуск платформы .. image:: _static/server_01.png :width: 500 :align: center **3. Имя хоста / IP-адрес** Мастер автоматически определяет внешний IP-адрес сервера. Вы можете подтвердить его или ввести доменное имя: .. code-block:: text Hostname / IP address > 203.0.113.45 .. image:: _static/server_02.png :width: 300 :align: center .. note:: Если указать ``localhost`` или ``127.0.0.1``, платформа будет доступна только локально. **4. Режим TLS** Выбор способа защиты соединения: - **Auto HTTPS** (рекомендуется) -- автоматически пробует Let's Encrypt, при неудаче переходит на самоподписанный сертификат - **Let's Encrypt** -- получение доверенного сертификата (требуется публичный домен или IP) - **Self-signed HTTPS** -- автоматически сгенерированный самоподписанный сертификат - **Custom certificate** -- укажите пути к своим файлам сертификата и ключа - **HTTP only** -- без шифрования (только для тестирования) .. image:: _static/server_03.png :width: 500 :align: center .. warning:: Режим **HTTP only** не рекомендуется для production-окружений. Все данные, включая пароли, передаются в открытом виде. **5. Выбор релиза** Мастер отображает список репозиториев бандлов с последней версией каждого и пунктом «Other version…» для выбора более старой версии: .. code-block:: text Select platform release > Community Bundles — 2026.1 (latest) Enterprise Bundles — 2026.1 (latest) Other version... - **Community Bundles** -- бесплатная версия с открытым исходным кодом - **Enterprise Bundles** -- расширенная версия (требуются учётные данные для Docker-реестра) - **Other version…** -- выбор более ранней версии (drill-down по репозиториям) .. image:: _static/server_04.png :width: 650 :align: center При выборе Enterprise мастер запросит логин и пароль для реестра Docker-образов и проверит их перед продолжением. **6. Демонстрационные данные** Выберите, устанавливать ли платформу с предзаполненными :ref:`демонстрационными данными ` или без них: - **С демо-данными** -- подготовленные рабочие пространства, типы данных, бизнес-процессы - **Без демо-данных** -- чистая установка .. image:: _static/server_05.png :width: 650 :align: center .. note:: После подтверждения шага 6 шаги **7 (запись конфигурации)** и **8 (установка systemd-сервиса)** выполняются автоматически -- дополнительный ввод не требуется. **7. Запись конфигурации** *(автоматически)* Мастер записывает файлы конфигурации: .. code-block:: text namespace.yml -> /opt/citeck/conf/namespace.yml daemon.yml -> /opt/citeck/conf/daemon.yml **8. Systemd-сервис** *(автоматически)* Автоматически создаётся и активируется systemd-сервис ``citeck``. Это обеспечивает: - Автоматический запуск при загрузке сервера - Перезапуск демона при сбоях - Управление через стандартные команды ``systemctl`` **9. Запуск платформы** На последнем шаге мастер предложит сразу запустить платформу. При подтверждении: - Запускается демон в фоновом режиме - Начинается скачивание Docker-образов - Отображается интерактивная таблица статусов .. image:: _static/server_06.png :width: 650 :align: center .. code-block:: text GROUP APP STATUS IMAGE ───────────────────────────────────────────────────── infra postgres RUNNING postgres:16 infra zookeeper RUNNING zookeeper:3.9 infra rabbitmq RUNNING rabbitmq:3.13 core keycloak RUNNING citeck/keycloak:26 webapp ecos-gateway STARTING citeck/ecos-gateway:2.0 webapp eapps PULLING citeck/ecos-apps:2.0 webapp emodel PULLING citeck/ecos-model:2.0 proxy proxy DEPS_WAITING citeck/proxy:2.0 12/18 running .. list-table:: :widths: 20 20 :align: center * - | .. image:: _static/server_07.png :width: 650 :align: center - | .. image:: _static/server_07.png :width: 650 :align: center Дождитесь, пока все приложения перейдут в статус **RUNNING**. Доступ к платформе ------------------- После завершения установки мастер отобразит информацию для доступа: .. code-block:: text ═══════════════════════════════════════════ Citeck установлен и работает! Откройте в браузере: https://203.0.113.45 Логин: admin / Ab3xK9mP2 Сменить пароль: citeck setup admin-password ═══════════════════════════════════════════ - **URL**: ``https://YOUR_IP`` (или ``http://YOUR_IP`` при HTTP-режиме) - **Логин**: ``admin`` - **Пароль**: генерируется автоматически при первой установке и отображается в выводе мастера .. note:: Обязательно скопируйте и сохраните этот пароль -- после закрытия экрана его нельзя будет восстановить. Если потеряли, сбросьте через :ref:`citeck setup admin-password ` -- команда устанавливает **новый** пароль для всех сервисов (Keycloak realm ``ecos-app``, RabbitMQ, PgAdmin) без необходимости знать старый. .. note:: Сгенерированный пароль применяется к Keycloak (realm ``ecos-app``), RabbitMQ и PgAdmin. Администратор master-realm Keycloak управляется отдельным service account и не зависит от этого пароля. .. warning:: При использовании самоподписанного сертификата браузер покажет предупреждение о безопасности. Это нормальное поведение -- добавьте исключение, чтобы продолжить. Оффлайн-установка ------------------- Для серверов без доступа к интернету: 1. На машине с интернетом скачайте бинарный файл со `страницы релизов `_. 2. Скачайте архив workspace с конфигурацией бандлов. **Этот шаг обязателен для offline-установки**, так как launcher не сможет автоматически подтянуть определения бандлов из git. Источник: публичный репозиторий `Citeck/launcher-workspace `_ -- скачайте архив из раздела Releases или кнопкой «Download ZIP» на главной странице репозитория. 3. Скопируйте оба файла на целевой сервер: .. code-block:: bash scp citeck-server-linux-amd64 user@server:/tmp/citeck scp launcher-workspace.zip user@server:/tmp/launcher-workspace.zip 4. Запустите установку с импортом workspace: .. code-block:: bash chmod +x /tmp/citeck /tmp/citeck install --workspace /tmp/launcher-workspace.zip --offline .. note:: Если workspace уже был импортирован ранее (например, на другом экземпляре) и вам нужно только обновить его из нового ZIP, используйте команду ``citeck update``: .. code-block:: bash citeck update -f /tmp/launcher-workspace.zip Что дальше ----------- - :ref:`Команды CLI ` -- полный справочник по командам - :ref:`Конфигурация ` -- настройка namespace.yml и daemon.yml - :ref:`Архитектура ` -- как устроен лончер изнутри - :ref:`Решение проблем ` -- типичные ошибки и их решение