Requirements
This article describes the requirements necessary for CKBox On-Premises to run smoothly.
A valid license key is needed to install CKBox On-Premises.
Contact us for a trial license key.
# CKBox On-Premises
# Hardware requirements
It is impossible to provide a single infrastructure setup, that will fit all use cases. In this section, we provide recommendations for ensuring high availability and high performance of CKBox On-Premises. As every use case is different, you need to monitor your application and adjust the infrastructure to your needs.
# High availability
To ensure high availability, we recommend running at least 3 instances of CKBox On-Premises.
CKBox On-Premises can be scaled with Docker containers on a single host machine. However, we recommend scaling on at least three host machines to provide the reliability of the system.
A load balancer, like HAProxy or NGINX (see the load balancer configuration examples in the Reverse proxy guide), is required for scaling on several machines. Of course, it is possible to use any cloud provider for scaling, such as Amazon ECS, Azure Container Instances, or Kubernetes.
# Software requirements
Currently, we only provide Linux-based Docker images for CKBox. We highly recommend running these on machines with Linux. However, you can also use Docker Desktop to run our Docker images on other operating systems.
The application is provided as a docker image by default.
It can be run with any Open Container runtime tool, for example: Kubernetes, OpenShift, Podman, Docker and many others.
In the case of Windows machines, you need to enable the WSL 2 backend and switch to Linux containers. Make sure that your operating system supports such an option. Refer to the Docker Desktop installation guide for more information.
# SQL Database
CKBox On-Premises requires MySQL database in version 8.0 or Postgres PostgreSQL 12.0.
If you want to use another SQL database like Microsoft SQL Server, etc., please contact us.
# Containers
Databases can be launched as containers, but this requires high awareness and responsiveness. Because each company has different policies and arrangements, we do not recommend any approach and leave the decision as to how the databases will be launched to you.
However, we encourage you to read this article: “To run or not to run a database on Kubernetes: What to consider” before making a decision.
# Redis
The required Redis version for CKBox On-Premises is 3.2.6 or newer. CKBox supports connection to single instance Redis or Redis Cluster. Redis Sentinel is not supported.
# Storage system
Storage systems that can be used with CKBox On-Premises are:
- AWS S3,
- Azure Blob Storage,
- Filesystem,
- SQL databases (the largest file you can send using SQL database is 4GB).