/ tag
Infrastructure
5 posts on this topic.
-
Moving Railyard's control plane from Fly.io to one EC2 box
Why the Railyard control plane needed four Fly machines and a dedicated IPv4, how it runs now on one Graviton EC2 instance with RDS and Caddy, and the cache-table bug that returned 500 on every request after the cutover.
-
Four ways to build someone else's repo
The options a deploy platform has for turning a repository it didn't write into a running container, what each costs, and two bugs in Nixpacks and the buildpack launcher I hit deploying Discourse.
-
A cloud firewall broke every deploy, and the fix was to stop dialing Postgres
Railyard created each app's Postgres database over the server's public port 5432, so a cloud firewall made every deploy time out. I moved the SQL into the agent's existing gRPC channel and put app-to-database traffic on the Docker network.
-
What a platform does between git push and a working URL
The five jobs every PaaS does after you push: build an image, run a release step, start your processes, route traffic to them, and roll back when it goes wrong. Explained from first principles, with Railyard's two-week-old pipeline as the running example.
-
Why I'm building deploy software instead of a host
Railyard deploys your whole app onto servers in your own DigitalOcean, Hetzner or Vultr account. Why I chose that shape, where it sits next to Heroku, Kamal and Coolify, and what the first two days of code looked like.