Инструменты пользователя

Инструменты сайта


sharixopen:knowledge:operations:installation_requirements

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
sharixopen:knowledge:operations:installation_requirements [2026/10/30 09:56] – [sharixknowledge] approved package sx_knowledge_api_opensharixopen:knowledge:operations:installation_requirements [2026/10/31 11:24] (текущий) – [sharixknowledge] approved package sx_knowledge_api_open
Строка 4: Строка 4:
     "page": "sharixopen:knowledge:operations:installation_requirements",     "page": "sharixopen:knowledge:operations:installation_requirements",
     "area": "open",     "area": "open",
-    "type": "procedure", +    "type": "requirement", 
-    "title": "Требования к среде и удобство первоначальной установки ShariX Open",+    "title": "Установка ShariX Open: требования к среде и удобство настройки",
     "status": "review",     "status": "review",
     "schema_version": 1,     "schema_version": 1,
Строка 18: Строка 18:
     "extensions": {     "extensions": {
         "taxonomy": {         "taxonomy": {
-            "domain": "operations", +            "domain": "setup_guides", 
-            "lifecycle": "documented",+            "lifecycle": "not_applicable",
             "parents": [             "parents": [
                 "ShariXKnowledgeOperations"                 "ShariXKnowledgeOperations"
             ],             ],
-            "terms": []+            "terms": [ 
 +                "audience_operator", 
 +                "audience_administrator", 
 +                "audience_developer", 
 +                "audience_ai", 
 +                "product_sharix_open", 
 +                "material_requirement", 
 +                "topic_operations_environment", 
 +                "topic_operations_install" 
 +            ], 
 +            "component": "webapp-base"
         },         },
         "source_evidence": [         "source_evidence": [
Строка 63: Строка 73:
             }             }
         ],         ],
-        "reviewed_on": "2026-10-30"+        "reviewed_on": "2026-10-30", 
 +        "editorial_review": { 
 +            "date": "2026-10-30", 
 +            "scope": "Одна опубликованная статья для согласования стиля. Технические требования отделены от пожеланий к удобству; список зависимостей остаётся в коде." 
 +        }, 
 +        "classification": { 
 +            "schema": "sharix.knowledge.classification.v1", 
 +            "products": [ 
 +                "sharix_open" 
 +            ], 
 +            "audiences": [ 
 +                "operator", 
 +                "administrator", 
 +                "developer", 
 +                "ai" 
 +            ], 
 +            "material": "requirement", 
 +            "topics": [ 
 +                "operations/environment", 
 +                "operations/install" 
 +            ], 
 +            "tag_terms": [ 
 +                "audience_operator", 
 +                "audience_administrator", 
 +                "audience_developer", 
 +                "audience_ai", 
 +                "product_sharix_open", 
 +                "material_requirement", 
 +                "topic_operations_environment", 
 +                "topic_operations_install" 
 +            ], 
 +            "registry_document": "ShariXKnowledgeClassification", 
 +            "state_meaning": "lifecycle относится к описываемому коду, а status к редакции документа; implemented не означает успешный runtime тест" 
 +        }, 
 +        "classification_review": { 
 +            "date": "2026-10-31", 
 +            "source": "Содержание текущей страницы и проверенный словарь классификации", 
 +            "body_scope": "classification_and_navigation_only" 
 +        }
     },     },
-    "content_sha256": "37f8d26c92b8e396b1f48d42611f463ea867f2427155dbf04e52dbbe81b99194",+    "content_sha256": "0cd4870480204d283f20769c4ba74315e6ee61151e521f01e3990aac393c9883",
     "schema": 1     "schema": 1
 } }
 </sharix-knowledge-meta> </sharix-knowledge-meta>
-====== Требования к среде и удобство первоначальной установки ShariX Open ======+====== Установка ShariX Open: требования к среде и удобство настройки ======
 ~~NOCACHE~~ ~~NOCACHE~~
  
 +**Назначение:** [[sharixopen:knowledge:classification:materials#trebovanija|Требования]]. **Продукт:** [[sharixopen:knowledge:classification:products#sharix_open|ShariX Open]].
 +
 +**Для кого:** [[sharixopen:knowledge:classification:audiences#operator_razvjortyvanija|Оператор развёртывания]] · [[sharixopen:knowledge:classification:audiences#administrator|Администратор]] · [[sharixopen:knowledge:classification:audiences#razrabotchik|Разработчик]] · [[sharixopen:knowledge:classification:audiences#nejroset|Нейросеть]].
 +
 +**Темы:** [[sharixopen:knowledge:classification:topics#sreda|Эксплуатация → Среда]] · [[sharixopen:knowledge:classification:topics#ustanovka|Эксплуатация → Установка]].
 +
 +
 +
 +Перед установкой ShariX Open нужно подготовить сервер, определить используемые внешние службы и получить параметры подключения. Эта страница помогает выяснить, что уже готово, чего не хватает и у кого запросить недостающие сведения.
 +
 +**Точные команды установки** находятся в [[sharixopen:knowledge:operations:deploy|инструкции установки и обновления]]. **Актуальный список зависимостей** находится в коде той версии, которую вы устанавливаете. Ниже указано, в каких файлах его искать.
 +
 +===== Что подготовить перед установкой =====
 +^ Что нужно ^ Что выяснить ^
 +| Сервер и операционная система | Название и версию дистрибутива, архитектуру, доступный каталог установки, свободное место и системные полномочия администратора. Команды подготовки должны соответствовать этой ОС. |
 +| Исходники приложения | Какую версию ShariX Open устанавливаем и какие дополнительные модули включаем. У корневого проекта и модулей могут быть отдельные репозитории. |
 +| Python и библиотеки | Какой Python использует проект, где будет его виртуальное окружение и выполнены ли требования корня и включённых модулей. Наличие системного Python не означает, что окружение приложения уже подготовлено. |
 +| База данных | Где работает выбранная БД, создана ли база для этой установки, какая учётная запись будет к ней подключаться и хватает ли ей необходимых прав. |
 +| LDAP и другие интеграции | Какие службы нужны выбранной конфигурации, где они работают и кто выдаёт параметры подключения. Установка LDAP-клиента не создаёт LDAP-сервер. |
 +| Адрес сайта и сеть | Домен, адрес и порт приложения, способ раздачи статики и настройки HTTPS. Кто отвечает за DNS, прокси и сертификат. |
 +| Учётные записи ОС | Под кем человек входит на сервер, кто выполняет deploy и под кем работает приложение. Эти назначения не следует смешивать. |
 +
 +При обновлении существующей установки дополнительно нужны сведения о её текущей версии и резервные копии БД, загруженных файлов и локальной конфигурации. Для нового сервера важно определить, какие части инфраструктуры администратор уже подготовил.
 +
 +Ресурсы сервера зависят от включённых модулей, объёма данных, фоновых задач и предполагаемой нагрузки. Проверенного универсального минимума RAM, CPU и диска эта страница не устанавливает.
 +
 +===== Где искать актуальные зависимости =====
 +В репозитории ''sharix-open-webapp-base'' используются следующие файлы:
 +
 +^ Файл ^ Для чего нужен ^
 +| ''requirements.txt'' | Перечисляет Python-библиотеки корневого проекта. |
 +| ''constraints.txt'' | Ограничивает допустимые версии библиотек при установке. |
 +| ''bin/utils/assembly_requirements.sh'' | Собирает требования корня, обязательных компонентов и включённых модулей для установки в одно окружение. |
 +| ''bin/install_system_dependencies.sh'' | Проверяет и подготавливает предусмотренные системные инструменты, например средства работы с LDAP и необходимые шрифты. Нужные действия зависят от режима вызова и ОС. |
 +| ''bin/install.sh'' | Определяет, на какой фазе вызываются подготовка зависимостей и остальные шаги установки. |
 +
 +Дополнительный модуль может иметь собственный ''requirements.txt''. Поэтому установка только корневого списка не всегда подготавливает всю сборку. Состав включённых модулей определяется конфигурацией, а специальные условия подключения описываются в README соответствующего модуля.
 +
 +Точные версии и имена системных пакетов проверяйте по выбранному commit. Копировать сюда весь список библиотек не нужно: после изменения кода такая копия быстро устареет.
  
-===== Назначение ===== +===== Какие сведения получить у администратора ===== 
-Страница помогает человеку подготовить установку и понять границы ответственности. Она описывает категории требований и согласованные пожелания к удобству. Точные версии, пакеты и включённые зависимости определяются актуальным кодом выбранной сборки. Эта страница не заменяет [[sharixopen:knowledge:operations:deploy|фазовую процедуру установки]] и не утверждает, что любой сервер уже готов.+Если БД, LDAP или другая служба находится вне устанавливаемого приложения, нужны реальные параметры именно этой службы.
  
-===== Где находится актуальный список зависимостей ===== +  * **Для БД:** адрес и порт, имя базы, учётная запись, необходимые права и способ безопасного получения пароля. 
-^ Источник в коде ^ Что уточнять ^ +  * **Для LDAP:** адрес и протокол подключения, базовая область поиска (Base DN), данные служебной учётной записи и условия защищённого соединения. 
-| Корневые ''requirements.txt'' и ''constraints.txt'' | Python-зависимости и ограничения версий выбранного commit. | +  * **Для сайта:** домен, адрес приложения, способ подключения внешнего HTTPS и ответственный за сетевые настройки. 
-| ''requirements.txt'' обязательных и включённых модулей | Дополнительные зависимости фактической сборки. | +  * **Для дополнительных модулей:** параметры только тех интеграций, которые действительно включаются в этой установке.
-| ''bin/utils/assembly_requirements.sh'' | Как определяется состав и выполняется общее разрешение зависимостей. | +
-| ''bin/install_system_dependencies.sh'' и вызовы из ''bin/install.sh'' | Системные инструменты, способы проверки и адресной подготовки для поддерживаемой ОС. | +
-| Примеры конфигурации и README owning modules | Параметры подключений, опциональные интеграции и специальные prerequisites. |+
  
-Не поддерживать здесь вторую копию длинного списка пакетов: она быстро расходится с исходниками. Наличие библиотеки в Git или пакета в ОС не доказывает, что её использует нужный venv и runtime. Актуальные значения секретов не являются частью документации.+Имена параметров и место их сохранения сверяйте с [[sharixopen:knowledge:operations:configuration|описанием конфигурации]] и примерами файлов выбранной версии. Реальные пароли и ключи в Wiki не размещаются.
  
-===== Что выяснить до начала ===== +===== Что относится к инфраструктуре, а что — к установщику приложения ===== 
-  * Какой продукт и версия устанавливаются; точные ОС/дистрибутив, архитектура и фактический каталог. +Установщик ShariX Open выполняет действия, предусмотренные его фазами и настройками. В частности, подготовка системных инструментов, установка Python-зависимостей, миграции БД, регистрация служб и запуск приложения — разные шаги. Их порядок и учётные записи указаны в [[sharixopen:knowledge:operations:deploy|инструкции установки]].
-  * Новая ли это среда или обновление с существующими данными; где резервная копия и кто отвечает за восстановление. +
-  * Какие Unix identities используются для личного входа, deploy и runtime; кто имеет необходимые системные полномочия. +
-  * Какие БД и внешние службы уже подготовлены, где они размещены и кто выдаёт параметры подключения. +
-  * Какие модули включаются; нужны ли для них LDAP, XMPP, хранилища, почта или другие интеграции. +
-  * Доменные имена, bind/порт, статические файлы и внешний HTTPS; кто отвечает за сетевую часть.+
  
-Ресурсы сервера выбираются по составу модулей, данным, фоновым задачам и нагрузке. Универсальные численные минимумы без измерений не задаются. Возможность открыть терминал и доступность Git не подтверждают готовность этих зависимостей.+Установщик может рассчитывать на уже работающую внешнюю БД или LDAP. Если их нет, сначала нужно согласовать и выполнить подготовку инфраструктуры. Установка клиентской утилиты, создание файла конфигурации и готовность внешнего сервера — три разных результата.
  
-===== Инфраструктура и приложение ===== +На планёрке 29 октября первоначальная установка была остановлена из-за нехватки сведений и неподготовленной среды. Этот случай показал, какие пояснения нужны человеку; он не подтверждает успешное прохождение всей установки.
-Установщик приложения может ожидать подготовленные БД и каталог пользователей. Установка LDAP-клиентских инструментов не создаёт LDAP-сервер и структуру каталога. Получение параметров БД не означает, что уже созданы нужная база, учётная запись и разрешения. Область автоматической подготовки определяется текущими фазами и выбранными опциями, а не ожиданием «всё с нуля».+
  
-При отсутствии необходимых сведений сохранить последний успешный шаг и запросить конкретные параметры у ответственного. Не придумывать адреса/имена служб, не пробовать чужие доступы и не выполнять серию случайных команд. Неудавшееся прохождение планёрки — источник вопросов к удобству, не подтверждённый успешный runbook.+===== Как должен быть устроен удобный сценарий установки ===== 
 +Следующие пункты описывают **пожелания к удобству и требования к доработке сценария**. Они не означают, что каждая возможность уже реализована.
  
-===== Пожелания к установке для человека ===== +  - **Объяснить исходное состояние.** Сначала спросить, новая это установка или обновление, что уже подготовлено и какие службы используются. 
-Это согласованные направления развития удобства, а не перечень уже реализованных возможностей. +  - **Объяснять запрашиваемые значения.** Для каждого параметра указать, зачем он нужен, откуда его взять и где он будет сохранён. Для случайного ключа предложить безопасную генерацию; адрес внешнего LDAP нужно получить у администратора. 
-  * Сначала объяснить предполагаемое исходное состояние и различие новой установки и обновления. +  - **Использовать уже введённые данные.** Если человек ввёл имя БД и пользователя, следующие шаги должны использовать эти значения. Просьба повторно переносить их вручную в другой блок команд создаёт лишнюю возможность ошибиться. 
-  * Для каждого параметра показать назначение, источник и безопасный пример. Сгенерировать допустимое случайное значение там, где это уместно; адрес чужой службы и полномочия генерацией не заменяются. +  - **Показывать, под кем выполняется действие.** Отличать личный вход, deploy и runtime. Не заставлять человека угадывать, когда нужно сменить пользователя. 
-  * Использовать уже введённые значения в следующих шагах, не заставляя переносить их повторно вручную. Явно показать, куда значение сохраняется и кем используется, не выводя секрет в отчёт. +  - **Объяснять выбор режима.** Например, что даёт диагностический режим и чем он отличается от обычной работы сайта. ''DEBUG=True'' не должен служить исправлением раздачи статики; её настройка описана [[sharixopen:knowledge:operations:nginx_static|отдельно]]. 
-  * Различать личный вход, deploy и runtime; рядом с действием указывать, от чьего имени оно выполняется. +  - **Предупреждать о записи.** Перед существенным изменением показать, что будет сделано, и сохранить заданные локальные настройки. Секреты не выводить в общий отчёт. 
-  * Объяснять последствия выбора, включая диагностический режим и сетевую доступность. ''DEBUG=True'' не является способом исправления production-статики. +  - **Помогать продолжить после остановки.** Сообщить последний успешный шаг, причину остановки и действие, необходимое для продолжения. Повтор всего установщика не должен подменять выяснение причины одного отказа.
-  * Перед записью показывать существенные изменения; сохранять существующие локальные значения, обозначать требуемые согласования и ожидаемые остановки. +
-  * После сбоя сообщать, что подтверждено и как продолжить с нужной фазы. Не предлагать полный повтор установки вместо адресной диагностики.+
  
-===== Как принять улучшение установки ===== +===== Что проверить после подготовки и запуска ===== 
-Проверить сценарий с заявленным исходным состоянием на предназначенной тестовой среде. Убедиться, что введённые значения доходят до нужной конфигурации, отсутствующая зависимость объясняется, локальные значения сохраняются и путь можно продолжить после остановки. Различать подготовку исходников, системную регистрацию, запуск и пользовательский результат.+Проверяют последовательно: зависимости подготовлены в нужном окружении; конфигурация содержит значения этой установки; необходимые миграции завершены; службы зарегистрированы и запущены под нужными пользователями; приложение отвечает и выполняет выбранный пользовательский сценарий.
  
-Фактические команды и полномочия — в [[sharixopen:knowledge:operations:deploy|процедуре установки]], локальные значения — в [[sharixopen:knowledge:operations:configuration|конфигурации]], статика — в [[sharixopen:knowledge:operations:nginx_static|nginx/статика]], основания проверки — в [[sharixopen:knowledge:development:verification|критериях приёмки]].+Результат каждого шага фиксируется отдельно. Если подготовка завершилась, а запуск нет, нужно разбирать запуск. Если служба запущена, но HTTP-проверка не получила ответа, сохраняют это предупреждение и выясняют сетевые условия. Если работает только отдельный участок, его не выдают за проверку всей цепочки. Подробные критерии — [[sharixopen:knowledge:development:verification|проверка изменений и приёмка]].
  
 ===== Проверенная исходная база: 30.10.2026 ===== ===== Проверенная исходная база: 30.10.2026 =====
sharixopen/knowledge/operations/installation_requirements.1793354206.txt.gz · Последнее изменение: — sx_knowledge_api_open

© 2022 ShariX