beszel Docker & Self-Hosted Deployment

GitHub

Lightweight server monitoring with historical data, docker stats, and alerts.

24,216 stars Go Go 1 file ยท ~3,177 tokens #homelab#monitoring#self-hosted
RAW Compose
1. Pull Image (DOCKERHUB) docker pull henrygd/beszel
2. Docker Run (1-Click Launch) docker run -d --name beszel -p 8090:8090 --restart always henrygd/beszel:latest
3. Podman Run podman run -d --name beszel -p 8090:8090 --restart always henrygd/beszel:latest
4. Skopeo Inspect (Zero-Pull Manifest) skopeo inspect docker://docker.io/henrygd/beszel:latest
5. ORAS Pull (OCI Artifact) oras pull henrygd/beszel:latest
6. Compose Deployment docker compose up -d
supplemental/docker/same-system/docker-compose.yml
Download .yml
# Docs: https://beszel.dev/guide/getting-started
# Env vars: https://beszel.dev/guide/environment-variables

services:
  beszel:
    image: henrygd/beszel:latest
    container_name: beszel
    restart: unless-stopped
    environment:
      APP_URL: http://localhost:8090
    ports:
      - 8090:8090
    volumes:
      - ./beszel_data:/beszel_data
      - ./beszel_socket:/beszel_socket
    # healthcheck:
    #   test: ['CMD', '/beszel', 'health', '--url', 'http://localhost:8090']
    #   interval: 120s
    #   start_period: 10s
    #   timeout: 5s

  beszel-agent:
    image: henrygd/beszel-agent:latest
    container_name: beszel-agent
    restart: unless-stopped
    network_mode: host
    volumes:
      - ./beszel_agent_data:/var/lib/beszel-agent
      - ./beszel_socket:/beszel_socket
      - /var/run/docker.sock:/var/run/docker.sock:ro
    environment:
      LISTEN: /beszel_socket/beszel.sock
      HUB_URL: http://localhost:8090
      TOKEN: <token>
      KEY: "<key>"
    # healthcheck:
    #   test: ['CMD', '/agent', 'health']
    #   interval: 120s