2 min read

Shipyrd, the dashboard for your Kamal deployments

A while back I posted about how we need a simple deployment dashboard for Kamal. A dashboard that highlights what was last deployed, what changes went out with that deploy, what changes are waiting to go out, who deployed last, if anyone is currently deploying, etc. Something clean and effective that embodies Kamal’s approach to deploying containers, so I started building it and I’m calling it Shipyrd.

Blue handwriting is my annotations

It’s deployed as a Kamal accessory so it fits right in with your current deployment workflow and future updates are just a simple reboot of the accessory(kamal accessory reboot shipyrd).

In its current state, you can quickly answer a variety of questions such as: When was production last deployed to? Who deployed it? What changes went out with it? How long did the deploy take? Is anyone deploying right now?

This initial version answers some of those base-level questions about your application and its current state but I think we can go further. Creating something that bridges the gap between a PAAS-style hosting platform like Heroku/Fly.io and hosting your own containers. Sprinkle in some container-level metrics around CPU/Memory/Disk, plot those over time, add alerts, manage deployment notifications in one place, etc.

I’m currently running Shipyrd for a few apps internally but planning on sharing it in the next couple of weeks. If you’re interested or have some functionality in mind feel free to reach out or subscribe below.

Oh, and the name. I started building this back when Kamal was still called MRSK and Shipyrd seemed pretty fitting, ya know, for bringing your containers into the Shipyrd.