Skip to content

Setup Uptime Kuma

Overview

Uptime Kuma is an easy-to-use self-hosted monitoring tool.

Important Docker Files

.env file

.env
NAME=uptimekuma
DOMAIN=
APPDATA=
SUB=uptime
PORT=3001

docker-compose.yml file

docker-compose.yml
services:
  uptimekuma:
    image: louislam/uptime-kuma
    container_name: ${NAME}
    restart: always
    volumes:
      - ${APPDATA}/${NAME}/config:/app/data
    networks:
      - proxy
      - internal
    labels:
      swag: enable
      swag_address: ${NAME}
      swag_port: ${PORT}
      swag_proto: http
      swag_url: ${SUB}.${DOMAIN}
      com.centurylinklabs.watchtower.enable: true
  homepage-socket-proxy:
    image: ghcr.io/tecnativa/docker-socket-proxy
    container_name: ${NAME}-socket-proxy
    restart: unless-stopped
    environment:
      CONTAINERS: 1 # Allow access to viewing containers
      SERVICES: 1 # Allow access to viewing services (necessary when using Docker Swarm)
      TASKS: 1 # Allow access to viewing tasks (necessary when using Docker Swarm)
      POST: 0 # Disallow any POST operations (effectively read-only)
    networks:
      - internal
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
    labels:
      com.centurylinklabs.watchtower.enable: true
networks:
  proxy:
    external: true
  internal:
    external: true

Start the Container

Start the Container
docker compose up -d