Built in HTTP Health Check

Our containers are generally built with minimal dependencies so as to minimize the attack surface. This means they don't normally have curl/wget/netcat. There is a funky shell trick, but it's .... ugly. Would it be possible to add a cycle-native HTTP/HTTPS health check?

Ugly Script

exec 3<>/dev/tcp/localhost/5000 && \
echo -e "GET /_ah HTTP/1.1\r\nHost: localhost\r\nConnection: close\r\n" >&3 && \
cat <&3 | grep 200
Michael Third...

    Hi Michael! Thanks for bringing this up. We've built but are continuing to expand our external monitoring service, but right now it only pings to check if a service is reachable. I can see us expanding this to include making http requests and looking for a 200 or something for availability, controlled from the portal/api.

    Christopher Aubuchon...

    This would be for the container setup itself (is it ready? is it still working?)

    Michael Third...

    k8s implements a 'is it ready' for health_checks which is often important if running db migrations or other before the container is ready. If you hit a larger db and are migrating columns or other makes these pre-checks necessary.

    A general 'tcp/http' health check would be uber beneficial as many folks are probably just hacking it in as above. I'm a +1 for this feature suggestion.

    Jeff Klink...

    Thanks for the feedback everyone - as Chris mentioned we're going to be heavily expanding our monitoring/alerting offering over the next few months. I think this feature would slot nicely into that work. We'll keep everyone updated on what we end up doing here.

    Alexander Mattoni...

    Hey Michael and Jeff, work is beginning on this today. :)

    Jake Warner...

Join the conversation

Sign in with your Cycle account to reply to this thread.

v2026.06.11.01 · © 2026 Petrichor Holdings, Inc.
Cookies

Cookies Preferences

We run basic, anonymous analytics by default to measure site traffic. By clicking "Accept," you allow additional cookies for advanced app improvements and tailored advertising. Choose what you share by clicking "Customize."