Ir para o conteúdo

Server Software Requirements

Requirements for the software parameters of the host on which Rox.Chat Server is installed. Requirements are described for the current version of Rox.Chat.

General Requirements

Software Version Features
Application server OS Debian GNU/Linux 11.05.x (Bullseye)
Web server nginx 1.14.2
Python 3.9.18
Python Interpreter CPython 3.9.18 pip, setuptools, buildtools, and wheel are required.
Relational DBMS MySQL 5.7
Analytic DBMS ClickHouse 22.2.2
Resident DBMS Redis 7.2.4 Used for delta-proxy server
Search engine Elasticsearch 8.5.3

There is software that is in principle compatible with Rox.Chat, but it is not used in testing updates. You can try using the software shown in the table below, but there is no guarantee that the system will be fully compatible with it.

Software Versions and modifications Features
App server OS Red Hat Enterprise Linux (RHEL) 7.9 (Maipo)
Ubuntu [Server] 18.04.x LTS
Debian GNU/Linux 10.10 (Buster)
Docker container
In theory, Rox.Chat Server can be installed on almost any UNIX/Linux-based system that is compatible with the more specific parameters listed in the following rows of this table. However, testing is carried out only on the specified versions and modifications, therefore, system performance and technical support are provided only if Rox.Chat is used on one of these OSs.
Using Debian is preferable due to the fact that this system is actively supported, developed and tested , has the best performance as a server OS. They are extensively tested by the Rox.Chat team and meet the specifications below. The remaining supported operating systems are partially tested and are suitable for most characteristics.
Python Interpreter PyPy 7.3.9
Web server nginx:

1.10
1.12
1.14
1.16

openresty:

1.21
Relational DBMS PostgreSQL 14.2, MariaDB 10.2

Requirements for a Relational DBMS Server

When using MySQL version 5.7, the following operating systems can be used (see MySQL documentation):

  • Oracle Linux 7 / Red Hat Enterprise Linux 7 / CentOS 7
  • Oracle Linux 6 / Red Hat Enterprise Linux 6 / CentOS 6
  • Solaris 11 (Update 4+)
  • Ubuntu 18.04 LTS
  • SUSE Enterprise Linux 12 (12.5+)
  • Debian GNU/Linux 10
  • Microsoft Windows 2016 Server
  • Microsoft Windows 2012 Server R2
  • Microsoft Windows 10
  • Other Linux based operating systems

When using PostgreSQL 14.2, the following operating systems can be used:

  • All LTS Linux distributions
  • Microsoft Windows (XP onwards)
  • FreeBSD
  • OpenBSD
  • NetBSD
  • macOS
  • AIX
  • HP/UX
  • Solaris

Requirements for an Analytical (Column) DBMS Server

According to official documentation, ClickHouse can be installed on any Linux, FreeBSD or Mac OS X based OS with CPU -architecture x86_64, ARM or PowerPC64LE.


Requirements for a Resident DBMS Server

According to official documentation, Redis can be installed on the following OS:

  • Ubuntu 20.04
  • RHEL & CentOS 8.0 and higher
  • Oracle Linux 8
  • Rocky Linux 8
  • Amazon Linux 2

Search Engine Requirements

In theory, Elasticsearch can be installed and run on any OS that supports JDK (Java Development Kit) version 17 and higher. More detailed requirements can be found in the official documentation.


Other Requirements

Rox.Chat Server depends on and includes with its code the modules, libraries and additional programs described below.

OS Packages

  • 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
  • openssl1.0
  • dpkg-dev
  • libpcre3-dev
  • libgd-dev
  • libssl1.0-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
  • libhunspell-dev
  • hunspell-ru
  • hunspell-en-us
  • openssh-server

Python 3.9 Libraries

  • httpx[http2]==0.19.*
  • cryptography==38.0.1
  • pysyge==1.2.0
  • python-dateutil==2.8.1
  • pillow==9.3.0
  • tornado==6.1.0
  • jinja2==3.1.2
  • pytz==2020.1
  • tzlocal==4.2
  • requests==2.28.0
  • idna==2.8
  • 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==22.1.0
  • ndg-httpsclient==0.5.1
  • pyasn1==0.4.8
  • python-magic==0.4.18
  • rsa==4.9
  • elasticsearch==8.3.0
  • pyfcm==1.4.5
  • sqlalchemy==1.3.20
  • pymysql==0.10.1
  • psycopg2cffi==2.8.1
  • xmltodict==0.12.0
  • pyjwt==2.5.0
  • pika==1.1.0
  • domain2idna==1.12.0
  • clickhouse-driver==0.2.2
  • clickhouse-sqlalchemy==0.1.8
  • alembic==1.8.0
  • objgraph==3.5.0
  • distro==1.7.0
  • prometheus-client==0.16.0
  • tornado-prometheus==0.1.2
  • orjson==3.8.0

Rox.Chat Libraries

  • 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.1.6
  • wmdb==0.3.10
  • 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
Additional system requirements for versions of Rox.Chat that contain PHP

Below is a list of additional packages required for Rox.Chat Server to work with PHP components.

OS Packages:

  • 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 Libraries:

  • ua-parser/uap-php 3.4
  • smarty/smarty 3.1
  • swiftmailer/swiftmailer 5.4.5
  • phpoffice/phpexcel 1.8.1
  • smi2/phpclickhouse 0.16.10
  • enshrined/svg-sanitize 0.7.1