Skip to main content

System Requirements

Before deploying ItsFriday, ensure your infrastructure meets these requirements.

Minimum Requirements

Development

  • 2 CPU cores
  • 4 GB RAM
  • 20 GB SSD storage
  • Docker 20.10+

Production

  • 4+ CPU cores
  • 8+ GB RAM
  • 100+ GB SSD storage
  • Docker 20.10+

Detailed Requirements

Hardware

ComponentMinimumRecommendedHigh Volume
CPU2 cores4 cores8+ cores
RAM4 GB8 GB16+ GB
Storage20 GB SSD100 GB SSD500+ GB NVMe
Network100 Mbps1 Gbps10 Gbps

Software

SoftwareVersionNotes
Docker20.10+Required
Docker Compose2.0+Required
LinuxUbuntu 20.04+, Debian 11+Recommended
macOS12+Development only
WindowsWSL2Development only

Ports

Ensure these ports are available:
PortServiceRequired
80HTTPYes
443HTTPSProduction
5432PostgreSQLInternal
9000ClickHouse (native)Internal
8123ClickHouse (HTTP)Internal
6379RedisInternal

Storage Considerations

Data Retention vs Storage

Data TypeRetentionStorage (1M events/day)
Metrics90 days~10 GB/month
Logs30 days~50 GB/month
Traces30 days~30 GB/month
ClickHouse uses efficient compression. Actual storage usage is typically 5-10x smaller than raw data.
/opt/itsfriday/
├── data/
│   ├── postgres/      # Config database (~5 GB)
│   ├── clickhouse/    # Analytics data (scales with volume)
│   └── redis/         # Cache (~1 GB)
└── backups/           # Backup storage

Network Requirements

Outbound Access

DestinationPurposeRequired
Docker HubPull imagesYes
Let’s EncryptSSL certificatesProduction
Auth0AuthenticationIf using Auth0

Firewall Rules

# Required
ufw allow 80/tcp    # HTTP
ufw allow 443/tcp   # HTTPS
ufw allow 22/tcp    # SSH (management)

# Block direct database access from internet
ufw deny 5432/tcp   # PostgreSQL
ufw deny 9000/tcp   # ClickHouse
ufw deny 6379/tcp   # Redis

Scaling Considerations

When to Scale

IndicatorAction
CPU > 80% sustainedAdd more cores or horizontal scale
RAM > 85%Increase memory
Disk > 80%Expand storage or reduce retention
Query latency > 5sScale ClickHouse

Horizontal Scaling

For high-volume deployments:
  • Backend: Run multiple backend containers behind a load balancer
  • Celery Workers: Add more worker containers
  • ClickHouse: Set up a cluster (advanced)
  • PostgreSQL: Use managed service with replicas

Cloud Provider Recommendations

AWS

WorkloadInstance TypeMonthly Cost*
Smallt3.medium~$30
Mediumt3.large~$60
Largec5.xlarge~$125

DigitalOcean

WorkloadDropletMonthly Cost
Smalls-2vcpu-4gb$24
Mediums-4vcpu-8gb$48
Largec-4-8gib$84

Hetzner

WorkloadServerMonthly Cost
SmallCX21€6
MediumCX31€10
LargeCX41€16
*Costs are approximate and may vary

Pre-Installation Checklist

Server meets minimum requirements
Docker and Docker Compose installed
Domain name configured (production)
SSL certificate or Let’s Encrypt access
Firewall configured
Backup strategy planned

Next Steps