Self-hosted app platform

Your own Fly.io. On hardware you own.

crucible is not just a sandbox. Deploy a durable app, reach it by name, roll out updates with zero downtime, and let it scale to zero when idle, all from one Go binary with no orchestrator to run. No cloud account, no per-second meter, no data leaving your metal.

  • ~125 ms wake from zero
  • self-heal from spec
  • zero-downtime updates
  • one binary no orchestrator
ops@host · crucible app

a platform, not a toy

Everything a hosted platform gives you

Durable and self-healing

The daemon reconciles from desired state. A crashed instance is replaced automatically, and a slept app survives a daemon restart.

reconcile-from-spec

Reach it by name

An ingress proxy routes web.<domain> to the current instance. Apps call each other privately at <app>.internal, default-deny.

ingress proxy · app networking

Scale to zero, and out

Idle apps sleep to ~0 RAM and wake in about 125 ms on request. Busy apps fork N load-balanced replicas that autoscale on concurrency.

sleep/wake · autoscale

Ship without downtime

Rolling updates boot the new version, gate on health, flip the route, then drain the old. A failed update keeps the old instance serving.

zero-downtime app update

operate it

Deploy, scale, observe from the CLI

deploy

One command

Boot an image as a durable app, reachable by name.

$ crucible app create web \
    --image ghcr.io/me/api -p 80
# reachable at web.apps.local

scale

Zero to N

Sleep when idle, fork replicas under load, all by policy.

$ crucible app create web \
    --min-scale 0 --max-scale 8

observe

See everything

Per-app metrics, OTLP export, and on-demand packet capture.

$ curl localhost:9000/metrics | grep app_
$ crucible app capture web -w cap.pcap

the whole apps tier, self-hosted

Deploy, scale, heal, observe. On your metal.

Everything a hosted platform gives you, running on hardware you already own.

$ curl -fsSL https://github.com/gnana997/crucible/releases/latest/download/install.sh | sudo bash -s -- --with-deps --enable