Laravel Octane on FrankenPHP. Horizon and Reverb in one line. PostgreSQL next to MariaDB. Frontend builds on deploy, database snapshots before every migration, wildcard certificates and built-in health checks. Same one-command server. Fourteen new superpowers.
Everything Cipi 5 adds, at a glance. Tap any tile to jump straight into the documentation.
Boot the framework once and keep it in memory. Octane apps and classic PHP-FPM apps run side by side on the same server — Nginx proxies to the Octane process, Supervisor keeps it alive, every deploy reloads it cleanly.
Two engines on one box. Pick per app or set a server-wide default — env, backups and restores follow.
Supervised, and restarted on every release.
Websockets proxied through Nginx, over SSL.
Run the build inside the release, right after dependencies. Fail-closed, so broken assets never reach production — and compiled files never reach your repository.
Cron on or off per app, from the CLI.
Switch runtime on a live app, both ways.
Opt in per app or per deploy and Cipi dumps the database before the release goes out. A bad migration becomes recoverable instead of fatal.
Clone a production app onto a new domain.
No app can starve the box any more.
Issue and renew through a Cloudflare DNS-01 challenge when a public HTTP endpoint isn't an option. HTTP-01 stays the default.
Every 5 minutes. Email after 3 failures.
www or apex, aliased and 301'd for you.
Restore the redirect without reissuing.
The honest before-and-after. Left is what running these things used to cost you. Right is Cipi 5.
The complete Cipi 5 addition to the CLI. Same syntax you already know, same one binary.
cipi app create --octaneCreate a Laravel app served by Octane
on FrankenPHPcipi app convert <app> --to=octane|fpmMove an existing app
between runtimescipi app reverb enable|disable|statusRealtime websockets for an
appcipi worker horizon enable|disable|statusHorizon instead of
plain queue workerscipi schedule on|off|status <app>Toggle the Laravel
scheduler per appcipi app edit --node-build='…'Run a frontend build on every
deploycipi app edit --no-node-buildRemove the build step
againcipi app clone <app> --domain=…Instant staging copy of a
production appcipi deploy --snapshotDump the database before the release goes
outcipi app limits <app>Cap FPM children, memory, Octane and
queue workerscipi db install|uninstall pgsqlAdd or remove PostgreSQL next to
MariaDBcipi db default mariadb|pgsqlChoose the engine used when you
omit the flagcipi db enginesInstalled engines, ports and current
defaultcipi ssl dns set --provider=cloudflareStore the credentials for
DNS-01 challengescipi ssl install --dns=cloudflare --wildcardIssue wildcard
certificates via DNScipi ssl force <app>Re-apply the HTTP to HTTPS
redirectcipi www add|force-to-root|force-from-rootCanonical host and
permanent redirectscipi health set|unset|check|list [--json]Built-in HTTP monitoring and
alertscipi api ip-whitelist show|add|set|allow-allRestrict panel API / MCP by IP (5.0.6+)cipi app webhook recreate [--rotate-secret]Recreate GitHub/GitLab deploy webhookcipi smtp configure --host=… --port=…Non-interactive SMTP for API/scripts (5.0.6+)cipi app env|run|deploy-configNon-interactive app tooling for API/GUI (5.0.3+)Server management from the REST API and optional web GUI — plus non-interactive flags for scripts.
Requires cipi self-update to 5.0.18 and panel API
1.20.
GET /api/php, install, remove, set default
cipi user keys
GET /api/services and restart from the panel
cipi smtp configure --host=…
--json on CLI
api/* and /mcp
cipi app webhook recreate [--rotate-secret]
open_basedir
Run the updater and Cipi rebuilds vhosts, pools, Deployer templates and app metadata in place — without touching your code or your data.