Been running statuspage clones at 3am again. Evaluated five options because idk why I do this
Cachet: php, pretty, abandoned-ish anyway
Statping: go binary, works, ugly config
Uptime-kuma: js, slick ui, active, my pick
Gatus: yaml only, no ui really, 💀
Upptime: github actions, clever, vendor lock
Deployed uptime-kuma on a 512mb Contabo kvm. Wrote an ansible role. Here is the relevant task, stolen from 4am:
- name: uptime-kuma docker
Community.docker.docker_container:
Name: status
Image: louislam/uptime-kuma:1
Ports: "3001:3001"
Restart_policy: always
Works. Idk why I do this. Repo is on my gitea if anyone wants it, same username