en
Language
  • en
  • cs
  • hu
  • it
  • es
  • fr
  • de
  • ru

Hardware and software requirements for the server solution

Introduction
Hardware requirements
Software requirements
Docker
Virtual machine

 

Introduction

Easy Project is a complex web application with a number of technical dependencies that allow it to run smoothly. There are vast operating systems, database servers, utilities, etc. In order to achieve optimal performance and functioning overall we handpicked a specific set of supported components.

There are two ways how you can avoid maintaining all of the necessary technologies surrounding our application:

  • Cloud solution - all maintenance is outsourced to Easy => this article is irrelevant for you
  • Docker - if you need to run on-premises, maintenance is practically outsourced to the Docker mechanisms

 

Hardware requirements

Minimum hardware requirements

These specifications are for 25 concurrent users with an average requests per second frequency.

Processor Intel Xeon E5440 @ 2.83GHz
Memory 4 GB
Disk space ~ 20 GB (3 GB for database files + enough for attachments)
Other Network card is required

 

Server requirements for larger implementations

This table is a simplified summary of higher usage levels of the server solution.

Users Threads / vCPU RAM HDD
50 8 12GB 40GB
100 12 32GB 60GB
200 24 64GB 200GB
500 24 128GB 500GB

Values in the table are not strictly given and the whole configuration depends on the extent and significance of the use of Easy Project in the company. As well as on the frequency of user access and requests sent to the server.

 

Internet connection requirements

The connection from the user to the server where Easy Project is located must be at least 10 Mbit. You need to take into account the whole route from the user to the server, so with geographically distant locations, the response of the server may take a longer time, regardless of the user's declared internet connection from their provider. The bandwidth of the server is also a factor, of course.

 

Software requirements

In order to develop quality software that can be installed on your own server and, at the same time, guarantee its stability and proper functioning, it is necessary to use an environment with which it works best and on which it is regularly tested. The table below combines requirements for direct installation and for use of Docker.

Docker tools are in bold because only they are truly required once you decide for Docker solution. In such case, we don't prescribe anything else (not even OS). That is the reason we strongly recommend using the Docker based solution - no hustle around dependencies.

For direct (legacy) installation, the server admin needs to install the listed requirements before a new Easy Project installation or update/upgrade.

Requirement type
Requirement
Current
(v14)

LTS
(v13)

Historic
(v12)

Historic
(v11)

Historic
(v10)

Operating System

Debian
12 11 10/11 10/11 10/11
Operating system
Architecture
amd64 amd64 amd64 amd64 amd64
Docker
Docker engine 24.0.5 24.0.5
20.10.22 not supported not supported
Docker
Docker compose 2.24.0 2.24.0 2.15.1 not supported not supported
Programming language Ruby 3.3.4 3.1.2
until v13.5.x
3.1.4
from v13.6.x
3.1.2 2.7.x 2.6.3
Application server
(automatically installed)
Puma 6.4.2 6.3.1 6.2.2

Web server Nginx 1.20.x 1.20.x
1.20.x


Database server Percona
8.x 8.x 8.x 5.7+ 5.7+
Database server MariaDB not supported not supported not supported not supported 10.3+
Database server PostgreSQL not supported not supported not supported not supported supported
Other requirements Bundler 2.3.7+ 2.3.7+ 2.3.7+ 2.2+ 2.1.x
Other requirements Redis 5.x 5.x 5.x 5.x 5.x
Other requirements NodeJS 20.16 18.17.1 18.8 14.16 14.16
Automatically installed Rails 6.x 6.x 6.x 6.x 5.x
Automatically installed Sidekiq




Automatically installed Zeitwerk partially supported
not required
partially supported
not required
not supported not supported not supported
Automatically installed Xapian 1.5.0 1.5.0 1.5.0 1.4.20 not supported


Supported web browsers (client)

Other browsers are not tested. Internet Explorer is not supported. For stability and security reasons, always keep your browser up to date.

 

Supported operating systems (client)

It goes without saying that using current versions of web browsers require current/supported operating systems on the computer or mobile device. The general rule is that the two latest operating systems versions are supported. It can be applied for Windows, MacOS, Linux distributions and mobile systems.

 

Docker

We are happy to announce official support for running our application on Docker technology. In fact, it will become the primary (and the only) supported solution. This comes after extensive testing and internal adoption on our whole Cloud, which resulted in noticeable increase of stability.

What's it about

There is not only a technological shift, but also that of the mindset and installation/upgrade process. While with the traditional (let's call it legacy) installation required a lot of preparation before you could install an update of Easy Project, the Docker solution allows it practically with a single command. There is no more need to visit Client zone to download the update package, no need to update Ruby, NodeJS, database server, OS. There is also minimized risk of mistake in a sequence of manual installation, and eliminated risk of untested code to be installed on your environment (gem updates, which are now in our full control).

Legacy
Docker
Server admin maintains depencendies Easy maintains dependencies
Many steps to update your application Update by a single command
Prescribed operating system Arbitrary operating system
(must support Docker engine and compose)
Major version upgrades require too much preparation Major version upgrades are installed as easily as bug-fixing updates
Risk of receiving untested dependencies
 (due to bundle update)
Dependencies are pre-built in the Docker image
and tested before release

Details about the process of deployment with Docker is explained in this article.

 

Virtual machine (VM)

A simple way of server deployment is with the help of virtualization. We generate the VM (ova image) on-demand, you just run it => practically nothing to install.

It contains already installed Easy Project with all related components in supported versions. However, for application updates, your server admin will need to watch the required versions of other components, since the current form of VM uses the legacy deployment.

We are preparing a system to generate VM image with Docker inside, which makes for an ultimately easy initial deployment and updates installation. It is planned to be available by autumn 2024.

Try Easy Project in 30 days free trial

Full features, SSL protected, daily backups, in your geolocation