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

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

По умолчанию **Webim Server** разворачивается через **Docker**.

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

| ПО                                      | Версия                                                    | Обязательность | Особенности                                                                                                                                                                                                      |
|-----------------------------------------|-----------------------------------------------------------|----------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Операционная система сервера приложений | Любая с поддержкой Docker (за исключением Windows Server) | Да             |                                                                                                                                                                                                                  |
| Docker Community Edition                | 20.10.17                                                  | Да             | Минимально достаточная версия для типового Docker-развёртывания                                                                                                                                                                    |
| Python                                  | 3.10.12                                                   | Да             |                                                                                                                                                                                                                  |
| Интерпретатор Python                    | CPython 3.10.12                                           | Да             |                                                                                                                                                                                                                  |
| Реляционная СУБД                        | PostgreSQL 18.1 либо MySQL 8.0.45                         | Да             | Совместим также с MySQL 5.7; эту версию не рекомендуем и на ней не тестируем.                                                                                                                                   |
| Колоночная СУБД                         | ClickHouse 23.12                                          | Да             | Используется для работы [статистики v2](https://webim.ru/kb/for-analytics/statistics/)                                                                                                                                |
| Резидентная СУБД                        | Redis 7.2.4                                               | Да             | Требуется для работы микросервисов [Speller](https://webim.ru/kb/devops/services/speller.html) и [data-storager](https://webim.ru/kb/devops/services/data-storager.html), также используется для [**Chat Backend**](https://webim.ru/kb/devops/scaling/) и [масштабирования **Admin Backend**](https://webim.ru/kb/devops/scaling/admin-backend-scaling.html) |
| Поисковый движок                        | OpenSearch 3.0.0                                          | Нет            | Используется в качестве [дополнительного хранилища истории чатов](https://webim.ru/kb/devops/connect-elasticsearch.html)                                                                                                                 |
| Брокер сообщений                        | Apache Kafka 3.9.0                                        | Нет            | В базовой конфигурации не требуется. Обязателен для кластера **Admin Backend** из нескольких узлов, для сервиса `data-storager` и для интеграции **Active Directory**; требования см. ниже                        |
| Объектное хранилище                     | S3-совместимое API                                        | Нет            | Используется при вынесении файлового хранилища во внешний S3; см. [файловое хранилище S3](https://webim.ru/kb/devops/s3-file-storage.html)                                                                                              |
| Система мониторинга                     | Prometheus 3.3.1                                          | Нет            |                                                                                                                                                                                                                  |

[^os_license]: За исключением операционных систем, доступ к которым со стороны Webim затруднён (свободный доступ отсутствует, заблокирован для пользователей из РФ и т. п.).

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

| ПО                                      | Версии и модификации                                                          | Особенности                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|-----------------------------------------|-------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Веб-сервер                              | 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**, но мы не рекомендуем её использование и не проводим на этой версии тестирование. Поддерживаемые операционные системы, ограничения и требования к окружению проверяйте по документации производителя:

  * [MySQL 8.0.45](https://www.mysql.com/support/supportedplatforms/database.html)

  * [PostgreSQL 18.1](https://www.postgresql.org/docs/18/supported-platforms.html)

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

---

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

Согласно [официальной документации](https://clickhouse.com/docs/en/install/#recommendations-for-self-managed-clickhouse), ClickHouse может быть установлен на любой ОС на базе Linux, FreeBSD или Mac OS X с CPU-архитектурой x86_64, ARM или PowerPC64LE.

---

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

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

Поддерживаемые операционные системы и требования к окружению для Redis проверяйте по [официальной документации](https://redis.io/docs/latest/operate/oss_and_stack/install/archive/install-redis/)

---

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

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

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

  * [OpenSearch](https://docs.opensearch.org/latest/install-and-configure/install-opensearch/index/)

  * [Elasticsearch](https://www.elastic.co/guide/index.html)

---

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

В базовой конфигурации — один экземпляр **Admin Backend**, без **Active Directory** и без выгрузки истории в поисковый движок — **Apache Kafka** не нужна. Она обязательна в следующих сценариях:

  * [кластер **Admin Backend**](https://webim.ru/kb/devops/scaling/admin-backend-scaling.html) из нескольких узлов — синхронизация данных операторов между узлами (вместе с **Redis**);

  * сервис **data-storager** — выгрузка истории диалогов в **Elasticsearch** / **OpenSearch** и статистики в **ClickHouse** (режимы *producer* и *consumer*);

  * интеграция [**Active Directory**](https://webim.ru/kb/devops/active-directory/) — фоновая и ручная синхронизация операторов.

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

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

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

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

!!! Note "См. также"
    Инструкции по подключению **Elasticsearch** или **OpenSearch** и общие требования к окружению приведены в статье [Подключение Elasticsearch или OpenSearch](https://webim.ru/kb/devops/connect-elasticsearch.html).


---

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

Ниже перечислены библиотеки, которые использует **Webim 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

---

Источник: https://webim.ru/kb/devops/sys-reqs-for-server/sys-reqs-server-sw.html
