Why self-host?
- Full control — your data lives on your infrastructure
- Custom domain — host at
foks.yourcompany.com - Virtual hosting — offer FOKS to your team or customers under a managed subdomain
- Air-gapped / private network — run FOKS inside a firewall without any internet dependency
- Open source — MIT license, no vendor lock-in
What you need
- A modern Linux server (or Docker-capable host)
- A PostgreSQL 15+ database (or let the setup script create a Docker container)
- A domain name with DNS control (for production)
- Go 1.24+ and a C compiler (if building from source)
Deployment options
Quick install
The fastest path to a running server isfoks-tool standup. It requires Docker and prompts interactively for a hostname, HTTP port, database port, and viewership mode, then creates all keys, certificates, databases, and a Docker Compose file in one shot:
Server components
A FOKS server consists of these processes:
All services are statically-linked Go binaries. The only external dependency is PostgreSQL.
Architecture modes
When setting up, you choose three axes: Network mode — how the server connects to the world:prod— connected to the public internetdev— local machine exposed via SSH reverse proxy (for development with real TLS certs)test— fully local, uses self-signed certs
systemd— for production Linuxdocker_compose— for Docker-based deploymentspm2— for development
standalone— a single FOKS instancehosting_platform— a base instance that can spawn virtual hosts