Discovery — The Full Tour

One command.
A whole platform.

Nginx, Laravel Octane on FrankenPHP (or classic PHP-FPM), MariaDB or PostgreSQL, Valkey, Horizon, Reverb, auto SSL, firewall, backups, cipi.yml, a REST API — even an MCP server so your AI can talk to production. Blazing fast, hardened from minute one, effortless to run. Live on any Ubuntu VPS in about ten minutes. Free, open source, forever.

Start the tour Read the Docs
$ wget -O - https://cipi.sh/setup.sh | bash
Scroll
1
Command to install
~10min
To production
28+
Features built in
$0
Per month, forever
100%
Open source · MIT
Fast
Performance

Octane on FrankenPHP.
Or classic FPM. Your call.

Every app picks its engine with a single flag: Laravel Octane running on FrankenPHP keeps your application booted in memory and serves thousands of requests per second — or choose rock-solid PHP-FPM when classic is what you need. Behind it, MariaDB or PostgreSQL per app and Valkey serving cache, sessions, and queues straight from memory. Performance isn't a paid tier here. It's the install script.

FrankenPHP Laravel Octane PHP-FPM MariaDB PostgreSQL Valkey
Octane in production
Ship
Ship

git push.
That's the whole pipeline.

Connect GitHub or GitLab once and Cipi handles the rest: deploy keys generated and injected, webhooks created, every app provisioned with its own Linux user, database, vhost, and PHP-FPM pool. Push to your branch and a signature-verified, zero-downtime deploy runs in the background — with one-command rollback if you ever need it. No CI/CD to maintain. No pipeline YAML to cry over.

auto deploy keys HMAC webhooks zero-downtime releases instant rollback
How deploys work
YAML
cipi.yml

Configuration that travels with the code.

Commit one file next to the app: domain aliases, PHP version and php.ini, extra databases, queue workers or Horizon, Laravel Reverb, the scheduler, a healthcheck, and backup profiles. Generate it from the server, inspect the plan, apply it — or opt in so every successful deploy reconciles. The schema carries no shell commands; an invalid file is rejected as a whole, never applied halfway.

generate plan apply auto on deploy
How cipi.yml works
Live
Always On

Queues, websockets, cron.
Already running.

Horizon or plain queue workers run under Supervisor and restart automatically on every deploy. Laravel Reverb pushes realtime websockets through Nginx with SSL. The scheduler is wired into cron the moment the app is created. Background jobs, broadcasts, and scheduled tasks aren't an afterthought — they're part of the provisioning.

Horizon queue workers Reverb websockets scheduler Supervisor
Workers & scheduler
AI
AI Native

Your AI has a hotline to production.

The built-in MCP server connects Cursor, VS Code, or Claude Desktop straight to your live app over HTTPS. Ask questions in natural language: read logs, run SQL queries, execute artisan commands, trigger deploys. Destructive statements are blocked, no SSH session ever opens, and you never paste a stack trace into a chat window again.

health app_info logs db_query artisan deploy
Meet the MCP server
Safe
Fortress

Hardened before your first login.

SSH key-only authentication, Fail2ban with progressive banning, UFW firewall, unattended security upgrades, an AES-256 vault for every credential, GDPR-compliant log retention, and full Linux-user isolation per app. Email alerts fire on intrusion attempts, sudo elevations, SSH key changes, and failed deploys — while everything lands in a tamper-evident event log. Security isn't a feature you enable. It's the default you'd have to work to remove.

SSH key-only Fail2ban + recidive UFW AES-256 vault real-time alerts
The security model
Sync
Resilience

Losing a server costs you one command.

Code, database, .env, and storage — encrypted and shipped to any S3-compatible bucket on schedule. Restore a database in one command, roll back a release in another. And when it's time to migrate or recover, cipi sync clones apps, databases, configs, and SSL certificates to a fresh server through a single AES-256 encrypted transfer. Disaster recovery stops being a project and becomes a command.

S3 · Spaces · MinIO · Backblaze one-command restore server A→B sync
Backups & sync
The Complete Index

Every feature. One page.

The thirty-second version of everything Cipi does. Every card links to the full documentation when you're ready to go deeper.

A

Provision & Performance

One-command install

A single script turns a fresh Ubuntu VPS into a complete production stack: Nginx, PHP 8.5, MariaDB or PostgreSQL, Valkey, Supervisor, Deployer, Certbot.

Deep dive

Octane on FrankenPHP

Serve each app on Laravel Octane powered by FrankenPHP for raw speed, or on classic battle-tested PHP-FPM. One flag per app, your call.

Deep dive

MariaDB or PostgreSQL

MariaDB by default, PostgreSQL one command away. Pick the engine per app — .env and connection URLs follow automatically.

Deep dive

Valkey cache & queues

A Redis-compatible in-memory store for cache, sessions, and queues — installed, secured, and wired into every app out of the box.

Deep dive

Horizon & Reverb

Laravel Horizon watching your queues and Reverb websockets behind Nginx with SSL — provisioned and supervised for you.

Deep dive

Fully isolated apps

Every app gets its own Linux user, database, Nginx vhost, PHP-FPM pool, and workers. One compromised app never touches another.

Deep dive

Zero-downtime deploys

Deployer-based atomic releases with symlink switching and one-command rollback. Your users never see a maintenance page.

Deep dive

git push auto-deploy

HMAC signature-verified webhooks trigger background deploys on every push. Branch filtering included, CI/CD pipeline not required.

Deep dive

cipi.yml

Configuration that ships with the code: aliases, PHP, databases, workers, Reverb, scheduler, healthcheck and backups — planned, applied, or reconciled on every deploy.

Deep dive

Automatic SSL

Let's Encrypt certificates installed and renewed automatically — wildcard domains supported. HTTPS is one command, then it's forever.

Deep dive
B

Any App, Any Interface

C

Intelligence & Monitoring

D

Data & Defense

Still reading?
Your server could already be live.

One command to install.
One command to deploy. Zero lock-in, forever free, MIT licensed.

Read the Docs Star on GitHub
$ wget -O - https://cipi.sh/setup.sh | bash