Safely expose Uptime Kuma Status page

I needed to expose some status page for my internal uptime kuma and I absolutely do not want to expose the entirety of my Kuma so everyone can pry into it so I’ve made a simple Fly-Replay powered reverse proxy:

How to use

  1. git clone https://github.com/lubien/status-page-lubien.git
  2. Edit the app name to your Uptime Kuma instance and your root redirect from the parts below:
:8080 {
    bind 0.0.0.0

	@replayable {
        path /status/*
        path /assets/*
        path /api/status-page/*
        path /icon.svg
    }

	header @replayable fly-replay "app=YOUR_UPTIME_KUMA_APP_NAME"
    respond @replayable 200 {
  		body "Replay"
  		close
   	}

	redir / /status/YOUR_STATUS_PAGE_URL

	respond 404 {
		body "Not found"
		close
	}
}
  1. fly launch --copy-config --ha=false

Remove --ha=false if you want 2 machines.


Related: