Get Labby running in 5 minutes

Install the app, deploy the Docker relay on your home network, and optionally expose it externally with Cloudflare Tunnel for monitoring from anywhere.

🐳

Docker

Any machine on your LAN

Labby Pro

One-time purchase

☁️

Cloudflare Account

Optional
1

Install Labby

Download Labby from Google Play or open the web app at app.labbyapp.com. No account needed — just install and go.

The free tier gives you 2 service monitors. To use the Docker relay, Wake-on-LAN, and unlimited monitors, upgrade to Pro (one-time £3.99 purchase).

If you just want to monitor services on your local network, you can skip steps 2–3 and jump straight to adding services in the app.

2

Deploy the Docker Relay

Run this single command on any Docker host on your home network:

docker run -d \
  --name labby-relay \
  --restart unless-stopped \
  --network host \
  -e RELAY_KEY=your-secret-key \
  miguelmolez/labby-relay:latest

Replace your-secret-key with a strong, unique passphrase. This key authenticates the app to your relay — keep it secret. You'll enter the same key in the app later.

The relay listens on port 9120 by default and runs in host networking mode so it can reach all services on your LAN and send Wake-on-LAN packets.

Verify it's running: open http://<your-host-ip>:9120/health in a browser — you should see a JSON response with "status":"ok".
3

(Optional) External Access with Cloudflare Tunnel

To monitor your lab from outside your home network without port forwarding, use Cloudflare Tunnel (free). This creates a secure outbound connection from your network to Cloudflare's edge — no open ports, no dynamic DNS.

Prerequisite: You need a domain added to your Cloudflare account (free plan is fine). If you don't have one, you can register one directly in the Cloudflare dashboard.

3a. Create the tunnel in Cloudflare

  • Log in to the Cloudflare Zero Trust dashboard at one.dash.cloudflare.com
  • Navigate to Networks → Tunnels
  • Click Create a tunnel and select Cloudflared as the connector type
  • Give the tunnel a name (e.g. labby-relay) and click Save tunnel
  • On the install page, choose Docker — you'll see a token starting with eyJ.... Copy this token.
  • Click Next to configure the public hostname:
    - Subdomain: relay   Domain: select your domain (e.g. yourdomain.com)
    - Service type: HTTP   URL: localhost:9120
  • Click Save tunnel. Cloudflare will automatically create the DNS record for relay.yourdomain.com.

3b. Create the Docker Compose file

Create a docker-compose.yml that runs both the Labby relay and (optionally) the Cloudflare tunnel connector:

# docker-compose.yml
services:
  labby-relay:
    image: miguelmolez/labby-relay:latest
    restart: unless-stopped
    network_mode: host
    environment:
      - RELAY_KEY=your-secret-key

  cloudflared:
    image: cloudflare/cloudflared:latest
    restart: unless-stopped
    network_mode: host
    command: tunnel --no-autoupdate run
    environment:
      - TUNNEL_TOKEN=${TUNNEL_TOKEN}
    profiles:
      - tunnel

3c. Add your tunnel token

Create a .env file in the same directory as your docker-compose.yml. Paste the token you copied from the Cloudflare dashboard:

# .env
TUNNEL_TOKEN=eyJh...your-token-here

Don't commit the .env file to version control — it contains your tunnel secret. Add it to .gitignore if you're using git.

3d. Start everything

Run both the relay and tunnel together:

docker compose --profile tunnel up -d

The --profile tunnel flag tells Docker Compose to also start the cloudflared container. If you run docker compose up -d without it, only the relay starts — handy if you only need local access.

Check both containers are running:

docker ps
# You should see both labby-relay and cloudflared running
Verify external access: visit https://relay.yourdomain.com/health in your browser — you should see {"status":"ok"}. If DNS hasn't propagated yet, wait a minute and try again.
4

Connect the App to Your Relay

Open Labby and connect it to the relay you just deployed:

  • Go to Settings (gear icon)
  • Tap Relay Configuration
  • Enter your relay URL and secret key
  • Tap Save

Local URL: Use http://<host-ip>:9120 when on your home WiFi.
Tunnel URL: Use https://relay.yourdomain.com when away from home.
The app will automatically use the relay for health checks when you're not on your local network.

5

Start Monitoring

Tap the + button to add your first service. Enter the URL or IP address, choose an icon and colour, and hit save. Labby will start checking it immediately.

When you're away from home, health checks route through the relay automatically — your services stay monitored from anywhere.

Wake-on-LAN: For machines you want to power on remotely, add the MAC address in the service settings. You can then wake them with a single tap, even when away (the relay sends the magic packet on your behalf).

You're all set! Your dashboard should show real-time status for all added services.

Common issues

Relay health check returns an error

Check the relay container is running with docker ps. View logs with docker logs labby-relay. Make sure nothing else is using port 9120 on the host.

Tunnel not working

Verify the tunnel container is running (docker ps) and check its logs. Confirm the hostname is configured correctly in Cloudflare Zero Trust and that DNS has propagated for your domain.

"Relay unavailable" in the app

Double-check the relay URL and secret key match exactly — no trailing spaces or slashes. Make sure your phone can reach the relay (same network for local, or tunnel/VPN for remote).

Can I use Tailscale or WireGuard instead of Cloudflare Tunnel?

Yes! Any method that lets your device reach port 9120 on the relay host will work. Tailscale, WireGuard, ZeroTier, plain VPN — just enter the appropriate URL in the app.

Do I need Pro for the relay?

Yes. The Docker relay is a Pro feature. Upgrade once for £3.99 — it's a lifetime purchase with no subscription.

Can I change the relay port?

Yes. Set the RELAY_PORT environment variable in your docker run command (e.g. -e RELAY_PORT=8080). Remember to update the tunnel config and app URL to match.

Ready to monitor your home lab?

Deploy the relay, connect the app, and never miss downtime again.

Download on Google Play Open Web App