Перейти к содержанию

Требования к программному обеспечению сервера

Требования к параметрам программного обеспечения хоста, на котором установлен Webim Server. Требования описаны для текущей версии Webim.

По умолчанию Webim Server разворачивается через Docker; альтернативные сценарии отмечены в таблице ниже.

Общие требования

ПО Версия Обязательность Особенности
Операционная система сервера приложений Любая с поддержкой Docker (за исключением Windows Server) Да
Docker Community Edition 20.10.17 Да Исключение — развёртывание через deb-пакеты. Минимально достаточная версия для типового Docker-развёртывания
Python 3.10.12 Да
Интерпретатор Python CPython 3.10.12 Да
Реляционная СУБД PostgreSQL 18.1 либо MySQL 8.0.45 Да Совместим также с MySQL 5.7; эту версию не рекомендуем и на ней не тестируем.
Колоночная СУБД ClickHouse 23.12 Да Используется для работы статистики v2
Резидентная СУБД Redis 7.2.4 Да Требуется для работы микросервиса Speller, также используется для Chat Backend и масштабирования Admin Backend
Поисковый движок OpenSearch 3.0.0 Нет Используется в качестве дополнительного хранилища истории чатов
Брокер сообщений Apache Kafka 3.9.0 Нет Нужен для сервиса data-storager и для интеграции Active Directory; требования см. ниже
Объектное хранилище S3-совместимое API Нет Используется при вынесении файлового хранилища во внешний S3; см. файловое хранилище S3
Система мониторинга Prometheus 3.3.1 Нет

Ниже приведены совместимые и исторически использовавшиеся варианты ПО для альтернативных конфигураций. Эти варианты не входят в базовую поставку Webim Server 10.8+, поэтому перед внедрением нужно отдельно проверить совместимость и ограничения на вашем стенде.

ПО Версии и модификации Особенности
Операционная система сервера приложений Debian GNU/Linux 12.5.x (Bookworm) В теории, Webim Server может быть установлен практически на любой UNIX/Linux-based системе, совместимой по более конкретным параметрам, перечисленным в следующих строках этой таблицы. Однако тестирование проводится только на указанных версиях и модификациях, поэтому работоспособность системы и техническая поддержка осуществляется только при условии использования Webim на одной из этих ОС.
Использование Debian предпочтительнее ввиду того, что эта система активно поддерживается, развивается и тестируется, обладает наилучшими показателями как серверная ОС. Она всесторонне тестируется командой Webim и подходит по указанным ниже характеристикам. Остальные поддерживаемые ОС тестируются частично и подходят по большинству характеристик.
Веб-сервер nginx 1.22.x; исторически также 1.10–1.16; openresty 1.25 В актуальной Docker-поставке — nginx 1.22.x (пакет Debian 12). Более старые версии nginx — для унаследованных конфигураций
Реляционная СУБД MySQL 5.7 Совместимость сохранена для обновлений со старых инсталляций; новая установка на этой версии не рекомендуется
Поисковый движок Elasticsearch 8.17.1 Поддерживается как альтернатива OpenSearch; перед вводом в эксплуатацию проверьте совместимость вашего контура

Требования к серверу реляционной СУБД

В базовой конфигурации Webim Server используйте PostgreSQL 18.1 либо MySQL 8.0.45. При этом сохраняется совместимость с MySQL 5.7, но мы не рекомендуем её использование и не проводим на этой версии тестирование. Поддерживаемые операционные системы, ограничения и требования к окружению проверяйте по документации производителя:

В прошлых конфигурациях могли использоваться и другие реляционные СУБД. Если вы используете такие варианты, ориентируйтесь на документацию соответствующего продукта и дополнительно проверяйте совместимость на вашем стенде.


Требования к серверу аналитической (колоночной) СУБД

Согласно официальной документации, ClickHouse может быть установлен на любой ОС на базе Linux, FreeBSD или Mac OS X с CPU-архитектурой x86_64, ARM или PowerPC64LE.


Требования к серверу резидентной СУБД

В Webim Server используется резидентная СУБД Redis 7.2.4.

Поддерживаемые операционные системы и требования к окружению для Redis проверяйте по официальной документации


Требования к поисковой системе

В Webim Server 10.8+ поддерживаются OpenSearch и Elasticsearch. В типовой конфигурации рекомендуется OpenSearch 3.0.0; допускается использование Elasticsearch 8.17.1.

Требования к окружению и поддерживаемым операционным системам смотрите в документации выбранного поискового движка:


Требования к Apache Kafka

Apache Kafka нужна в следующих сценариях:

  • сервис data-storager — выгрузка истории диалогов и сопутствующих объектов в Elasticsearch / OpenSearch (режимы producer и consumer);

  • интеграция Active Directory.

Необходимо обеспечить:

  • доступ к брокеру/кластеру Kafka (bootstrap servers) из инфраструктуры Webim;

  • наличие топиков и прав на запись/чтение для сервисной учетной записи;

  • при использовании защищенных профилей — корректные параметры авторизации/шифрования (SASL/SSL).

См. также

Инструкции по подключению Elasticsearch или OpenSearch и общие требования к окружению приведены в статье Подключение Elasticsearch или OpenSearch.


Другие требования

Разделы ниже относятся к установке не через Docker (deb-пакеты / ручная сборка на хосте). При развёртывании через Docker зависимости уже входят в образы поставки; отдельно ставить этот список на хост не требуется.

Пакеты ОС

  • nginx

  • Browscap

  • python-virtualenv

  • python3

  • python3-pip

  • python3-venv

  • python3-dev

  • gcc

  • g++

  • supervisor

  • gpg

  • gpg-agent

  • apt-utils

  • build-essential

  • ca-certificates

  • software-properties-common

  • net-tools

  • tcl8.6-dev

  • tk8.6-dev

  • curl

  • dialog

  • locales

  • locales-all

  • language-pack-ru-base

  • language-pack-en

  • tzdata

  • run-one

  • iputils-ping

  • wget

  • nano

  • telnet

  • zip

  • git

  • libpq-dev

  • dpkg-dev

  • libpcre3-dev

  • libgd-dev

  • libssl-dev

  • libxml2-dev

  • libxslt-dev

  • libgeoip-dev

  • libreadline-dev

  • libfreetype6-dev

  • libharfbuzz-dev

  • libfribidi-dev

  • libxcb1-dev

  • libbz2-dev

  • libunwind-dev

  • lsof

  • libreoffice

  • libreoffice-java-common

  • make

  • perl

  • zlib1g-dev

  • imagemagick

  • libmagick-dev

  • libmagic1

  • libtiff5-dev

  • libopenjp2-7-dev

  • libjpeg-dev

  • libwebp-dev

  • libmysqlclient-dev

  • libffi-dev

  • libsqlite3-dev

  • liblzma-dev

  • liblcms2-dev

  • libkrb5-dev

  • libncurses5-dev

  • libaspell-dev

  • unixodbc-dev

  • libbz2-dev

  • gnupg2

  • aspell-en

  • aspell-ru

  • openssh-server


Библиотеки Python 3.10

  • httpx[http2]==0.19.*

  • cryptography==41.0.0

  • pysyge==1.2.0

  • python-dateutil==2.8.1

  • pillow==9.3.0

  • tornado==6.4.0

  • jinja2==3.1.3

  • pytz==2020.1

  • tzlocal==4.2

  • requests==2.32.0

  • idna==3.7

  • pycryptodome==3.9.8

  • ua-parser==0.16.1

  • transliterate==1.10.2

  • aspell-python-py3==1.15

  • markupsafe==2.0.1

  • suds-py3==1.4.1.0

  • pyopenssl==23.2.0

  • ndg-httpsclient==0.5.1

  • pyasn1==0.4.8

  • python-magic==0.4.18

  • rsa==4.9

  • opensearch-py==3.0.0

  • pyfcm==1.4.5

  • sqlalchemy==2.0.23

  • asyncmy==0.2.8

  • asyncpg==0.28.0

  • psycopg2cffi==2.8.1

  • xmltodict==0.12.0

  • pyjwt==2.5.0

  • domain2idna==1.12.0

  • clickhouse-driver==0.2.6

  • clickhouse-sqlalchemy==0.3.0

  • alembic==1.12.0

  • objgraph==3.5.0

  • distro==1.7.0

  • prometheus-client==0.16.0

  • tornado-prometheus==0.1.2

  • orjson==3.8.0

  • pyodbc==5.1.0

  • aioodbc==0.5.0


Библиотеки Webim

  • apns_http2==0.1.0

  • wm_hyper==0.7.0

  • wm_crypto==0.1.0

  • wm_types==0.1.0

  • helpers==0.1.2

  • observer==1.0.10

  • settings==1.0.17

  • specification==0.1.0

  • saext==1.2.1

  • wmdb==0.4.4

  • wm_db_metadata==1.11.14

  • validation_rules==0.1.3

  • error_objects==0.1.0

  • abac==0.2.1

  • abac_expressions==0.2.1

  • validate==0.0.2

Дополнительные системные требования для версий Webim, в которых присутствует PHP

Ниже представлен список дополнительных пакетов, необходимых для работы Webim Server с компонентами на PHP.

Пакеты ОС:

  • PHP Composer

  • php5.6

  • php5.6-mysql

  • php5.6-curl

  • php5.6-fpm

  • php5.6-imagick

  • php5.6-mbstring

  • php5.6-xml

  • php5.6-zip

  • php5.6-json

  • php5.6-redis

Библиотеки PHP:

  • ua-parser/uap-php 3.9.7

  • smarty/smarty 3.1.48

  • swiftmailer/swiftmailer 5.4.5

  • phpoffice/phpexcel 1.8.2

  • smi2/phpclickhouse 0.16.10

  • enshrined/svg-sanitize 0.18.0

  • webonyx/php-fernet