The Bahriya Blog
Product, engineering, opinion.
Launch notes, engineering essays and the occasional sharp opinion from the team building Bahriya.
Developer Series
Editing Word documents and spreadsheets in the browser: Collabora Online on Bahriya
How to self-host Collabora Online for Nextcloud on Bahriya: five form fields and three environment variables replace a VM, reverse proxy and TLS setup.
Announcements
Bahriya is generally available
Bahriya is out of early access and open to everyone. The API contract is frozen, the console is stable, and here is everything you can build on today.
Announcements
Managed Valkey — the Redis you remember, minus the licence
Managed Valkey lands on Bahriya: the open-source continuation of Redis, with cache and store modes, three topologies, and drop-in support for Redis clients.
Developer Series
Rebuilding our deployment engine for speed and resilience
How and why we rebuilt Bahriya's deployment engine: a versioned desired state, per-region deployers converging in parallel, and recovery that is almost free.
Announcements
Your deployments just got faster across every region
Deployments on Bahriya now reach every region in under three minutes. Rollouts run in parallel across regions, with no change to your workflow.
Announcements
Network policies — private by default, connected on purpose
Network policies arrive on Bahriya: projects stay private by default while you allow exactly the peer projects, IP ranges, domains and ports you intend.
Announcements
Access control, the way you actually work
Bahriya access control grows up: build custom roles, override access per project, share single resources, and transfer ownership with a two-party handshake.
Perspectives
DCCAPTN: a modified CAP theorem for distributed containers
A theorem I have been developing — DCCAPTN, "Dee See Captain" — adapts Brewer's CAP theorem to the reality of distributed container ecosystems: Consistency, Availability, Performance, and Tolerance of Network Failures as four dials wired to each other, not a menu you fully satisfy.
Announcements
Path rules — take the admin door off the public internet
Path rules let you apply basic auth, IP lists and rate limiting to specific URL paths on a Bahriya HTTP container — different protections for the same app.
Perspectives
What "early access" actually means on Bahriya
What early access meant on Bahriya: moving API and console surfaces on top of a stable production runtime — and why workloads were safe to run throughout.
Announcements
The Vault and Configs are here — and they're the runway for what comes next
The Vault and Configs land on Bahriya: versioned, rotatable homes for TLS bundles, keys, secrets and config files, attached at the project level.
Announcements
The Bahriya Terraform provider is now on the HashiCorp Registry
The official Bahriya Terraform provider is live on the HashiCorp Registry, with full lifecycle management of projects, containers, registries and secrets.
Announcements
Multiple custom hostnames and init jobs — HTTP containers grow up
HTTP containers on Bahriya now support up to five custom hostnames and ordered init jobs that run migrations and setup before your app starts serving.
Announcements
Stateful containers, replicated by default
Containers on Bahriya now keep state: free ephemeral scratch space plus replicated SSD persistent volumes that survive restarts, billed per minute.
Developer Series
Tuning a proxy cache for hit rate, latency, and origin load
A practical guide to tuning a Bahriya proxy cache: sizing to your working set, picking TTLs, tightening the cache key, and iterating on the hit rate.
Announcements
Managed proxy caching is now live on Bahriya
Managed proxy caching is live on Bahriya: flip it on and a three-node cache cluster serves repeat requests in every region your HTTP container runs in.

Announcements
Built-in Prometheus metrics are now live on Bahriya
Bahriya now scrapes, aggregates and charts your application's Prometheus metrics. Set a port and a path — no Prometheus server or scrape configs to manage.

Announcements
Workers and cron jobs are live on Bahriya
Worker and cron job containers are live on Bahriya: run background processors and scheduled tasks alongside your HTTP services, in every region.

Developer Series
Securing your container: basic auth and IP rules
When to reach for basic auth, IP allow-lists and deny-lists on a Bahriya HTTP container, how the layers combine at the ingress, and four practical recipes.

Announcements
Bahriya is live — and we're opening early access
Bahriya is live and accepting early access users: multi-region container deployment with managed caching, secrets, autoscaling, DNS and transparent billing.

Developer Series
Deploying a multi-pool Memcached setup on Bahriya
How to run multiple Memcached pools on Bahriya — separate session, object and rate-limit caches, each with its own sizing, nodes and regions.

Developer Series
The edge container cloud — and why it matters
How Bahriya's edge container cloud model runs your full application in every region, with GeoDNS routing each user to the nearest one — no edge-function limits.

Announcements
The path to building Bahriya
Why we built Bahriya: the frustration with cloud complexity, the meaning behind the name, and the tools we created to make deploying containers globally simple.

Developer Series
Deploying to 4 regions: Amazon ECS vs Bahriya
Deploying one container to four regions: roughly 120 to 170 resources on Amazon ECS versus one YAML file and a single command on Bahriya.

Developer Series
CDN-level speed with Memcached and GeoDNS
Combine multi-region Memcached with GeoDNS on Bahriya to get CDN-level latency for dynamic data, with each region warming its own local cache.