在 Fly.io 上架設 Uptime Kuma 監控 Side Project

前言
由於近期自己蓋了幾隻 side project,慢慢發現有些服務倒了我自己也不知道,但時間久了其實當下也會忘了要修哪...
也因公司內有 status page 可以看每個服務狀態,想想這需求我也需要,因此萌生了架 status page 來幫忙確認健康狀態,接下來看看怎麼操作吧
介紹
此次使用的是 uptime-kuma,本來想說可以直接上到 Google Cloud Run 上,除了自己弄不上去以外,也發現 uptime kuma 是使用 SQLite 來儲存資訊,這邊很有可能被 Cold Start 的問題打到,因此這次使用 fly.io 來部署(民間版本.toml)
- 有許多的 notification 可以串接,有支援 LINE Bot & Notify

初次進去就可以設帳密,但帳號只能一個還改不了 🫣
可設定群組,統一設定 notification 而不用各別弄
還沒研究怎麼把 SQLite 拔出來,看來有支援 MySQL
備份不求人,直接 Export 就可以了

- 如何部署到 fly.io
# Clone 專案到本地
git clone https://github.com/louis70109/uptime-kuma-fly.git
# 進入資料夾
cd uptime-kume-fly/
# 部署,原先指令是 flyctl
fly launch \
--copy-config \
--auto-confirm \
--ha=false \
--name uptime-kuma-nijia \
--now
- 如果想要在 fly.io 上客製化 domain,例如:
status.YOURDOMAIN.com
fly certs create status.YOURDOMAIN.com
fly certs create "*.YOURDOMAIN.com"
fly certs show "*.YOURDOMAIN.com"
結論
看 Fly.io 一個月租金寫 5 美元,但因為只有一個服務應該不會用到這麼多流量,這次除了架設 status page 以外,也來看看這邊租金是怎樣,如果 < 100 台幣的話或許可以考慮繼續使用,畢竟人家提供方便的服務來使用也是挺棒的!