System Requirements¶
This page describes the supported platforms and dependencies for SmallBlock CMS.
Supported Platforms¶
Linux distributions: CentOS Stream 10, Fedora 40+, Ubuntu 22.04+
Python: 3.10 or later
Databases: PostgreSQL 13+ or MariaDB 10.5+
Web server / reverse proxy: Nginx 1.20+ (recommended)
Hardware (Guidelines)¶
CPU: 2+ vCPUs for production; 1 is sufficient for evaluation
RAM: 2 GB minimum (4+ GB recommended for production)
Storage: 10 GB minimum free space (logs, media, backups)
Network: open ports 80/443 for HTTP/HTTPS
OS Packages¶
CentOS Stream 10 example:
sudo dnf install -y python3 python3-pip nginx git
# Database (choose one):
sudo dnf install -y postgresql-server # for PostgreSQL
sudo dnf install -y mariadb-server # for MariaDB
Users and Permissions¶
Create a non-root user to manage your app process and files:
sudo useradd --system --home /srv/smallblock --shell /sbin/nologin smallblock
sudo mkdir -p /srv/smallblock/{app,env,run,logs,static,media}
sudo chown -R smallblock:smallblock /srv/smallblock
Security Notes¶
SELinux: keep enforcing; label sockets and app data correctly.
Firewall: allow only ports 80/443 from the Internet; DB ports should be local-only.
TLS: terminate HTTPS at Nginx; use Let’s Encrypt or a managed cert.