Clement Ong

How to Self Host Uptime Kuma with fly.io for Free


At the time of writing it is not possible to deploy free tier instance without a valid credit card or positive credit balance. So make sure you have at least valid credit card attached or positive credit balance before proceeding.

Install the fly.io cli tool too.

Steps

  1. Start a empty repo, run fly launch.
  2. Enter a global unique name, this will be part of the fly.dev subdomain. E.g. chicken22
  3. After that run flyctl volumes create chicken22-volume to create a volume
  4. A .toml file will be created, replace it the following:
app = "chicken22"

kill_signal = "SIGINT"
kill_timeout = 5
processes = []

[build]
  image = "louislam/uptime-kuma:1"

[mounts]
source="chicken22-volume"
destination="/app/data"

[env]
  PORT = "8080"

[experimental]
  allowed_public_ports = []
  auto_rollback = true

[[services]]
  http_checks = []
  internal_port = 8080
  processes = ["app"]
  protocol = "tcp"
  script_checks = []

  [services.concurrency]
    hard_limit = 25
    soft_limit = 20
    type = "connections"

  [[services.ports]]
    force_https = true
    handlers = ["http"]
    port = 80

  [[services.ports]]
    handlers = ["tls", "http"]
    port = 443

  [[services.tcp_checks]]
    grace_period = "1s"
    interval = "15s"
    restart_limit = 0
    timeout = "2s"


5. Run fly deploy

6. Check your fly.io dashboard and get the link. You now successfully host your own monitoring tool. Yay!


fly.io uptime-monitoring


projects | about
© 2014 - 2022