rmcampos 2e6820f204
Deploy to prod / terraform-plan (push) Successful in 32s
Update .github/workflows/deploy.yml
2026-06-29 21:53:57 +00:00

Dozzle on Kubernetes

Terraform configuration to deploy Dozzle (a real-time Docker log viewer) to a Kubernetes cluster.

Overview

This project provisions Dozzle in Kubernetes mode, allowing it to read logs from all pods cluster-wide via the Kubernetes API. It includes proper RBAC, TLS, and ingress configuration.

Architecture

User → Ingress (Traefik) → Service → Dozzle Pod → Kubernetes API → Pod Logs
                                          ↑
                                   Service Account Auth

Components deployed:

  • Namespace: dozzle
  • Service Account: dozzle-pod-viewer with ClusterRole/ClusterRoleBinding for cluster-wide log access
  • Deployment: amir20/dozzle:v10.6.6 in Kubernetes mode
  • Service: Exposes port 80 → 8080
  • Ingress: TLS-enabled via Let's Encrypt and Traefik

Quick Start

# Initialize Terraform
terraform init

# Plan and apply
terraform plan -out dozzle.plan
terraform apply dozzle.plan

Documentation

For detailed documentation, see AGENTS.md.

Prerequisites

  • Valid ~/.kube/config pointing to the target cluster
  • AWS credentials (AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY) for the S3 backend (Cloudflare R2)
  • Traefik ingress controller installed
  • cert-manager for TLS provisioning
  • DNS record pointing dozzle.darkroasted.vps-kinghost.net to the cluster ingress

License

See the project LICENSE file for details.

S
Description
No description provided
Readme
51 KiB
Languages
HCL 100%