OpenObserve 5-minute Docker + Traefik setup

This post showcases how to setup OpenObserve using Docker and Traefik in just 5 minutes. OpenObserve is an open-source observability platform that allows you to collect, analyze, and visualize logs, metrics, and traces from your applications.

docker-compose.yml
services:
  openobserve:
    image: public.ecr.aws/zinclabs/openobserve:latest
    container_name: openobserve
    restart: unless-stopped
    #ports:
    #  - "5080:5080"
    volumes:
      - ./openobserve_data:/data
    environment:
      ZO_ROOT_USER_EMAIL: "[email protected]"
      ZO_ROOT_USER_PASSWORD: "INSERT_YOUR_PASSWORD_HERE"
    labels:
      - "traefik.enable=true"
      # OpenObserve web UI
      - "traefik.http.routers.openobserve.rule=Host(`openobserve.mydomain.com`)"
      - "traefik.http.routers.openobserve.entrypoints=websecure"
      - "traefik.http.routers.openobserve.tls.certresolver=cloudflare"
      - "traefik.http.routers.openobserve.tls.domains[0].main=mydomain.com"
      - "traefik.http.routers.openobserve.tls.domains[0].sans=*.mydomain.com"
      - "traefik.http.routers.openobserve.service=openobserve"
      - "traefik.http.services.openobserve.loadbalancer.server.port=5080"

After creating, the file, you can start OpenObserve with the following command:

Start-OpenObserve.sh
docker-compose up

You can setup Autostart using Create a systemd service for your docker-compose project in 10 seconds, TL;DR:

Setup-Autostart.sh
curl -fsSL https://techoverflow.net/scripts/create-docker-compose-service.sh | sudo bash /dev/stdin

Check out similar posts by category: Monitoring, Docker