Files
inspector/config.example.yml
T
Europium 63 c603e86e75 Release v0.8.0 — Portainer-first install, in-app guide
- Install from Portainer with no command line: paste the compose, set a
  folder and a password, deploy. Inspector creates its own config and
  detects Docker socket permissions by itself.
- Illustrated how-to guide inside the app (Help tab) and in the repo.
- Containers added in the UI are watched right away, no restart.
- maintenance_window switch on the container form.
- README with logo and screenshots; INSTALL rewritten for Portainer.
2026-10-27 15:45:33 -07:00

142 lines
4.3 KiB
YAML
Executable File

# Inspector example configuration: every option, with comments.
#
# You normally don't need this file. Inspector writes its own config.yml to
# INSPECTOR_DATA/config/ on first start, and the dashboard edits it for you.
# Use this as a reference for the advanced options that are YAML-only
# (http_check, uptime_kuma, depends_on, Portainer stack redeploy).
inspector:
interval_seconds: 60
log_level: INFO
dry_run: false
log_dir: /app/logs
log_filename: inspector.log
log_retention_days: 30
heartbeat: false
notifications:
# Gotify: https://gotify.net
gotify:
enabled: false
url: ""
token: ""
priority: 5
# Pushover: https://pushover.net
# Independent of Gotify — enable either, both, or neither. If both are
# enabled, every alert is sent to both. Inspector's priority is an
# integer on a Gotify-style scale (default 5) and is mapped to
# Pushover's -2..2 range at send time: <=2 -> -1, 3..4 -> 0,
# 5..6 -> 1, >=7 -> 2.
pushover:
enabled: false
token: "" # Pushover application API token
user_key: "" # Pushover user or group key
priority: 5
device: "" # optional target device; blank = all devices
sound: "" # optional sound name; blank = user default
# Persist a durable per-container event history to a local SQLite DB.
# Enables the /events page and the Health summary digest.
database:
enabled: false
path: /app/data/events.db
retention_days: 30
# Periodic digest of per-container events, delivered through the enabled
# notification channels. Requires database.enabled: true to have data.
health_summary:
enabled: false
interval_hours: 24
priority: 3
# Recurring daily maintenance window. Containers that opt in with
# `maintenance_window: true` are not acted on during this window.
maintenance:
enabled: false
start: "00:00"
end: "06:00"
dir: /app/data/maintenance
max_hours: 8
# Manual notification muting per container (toggled from the dashboard).
notification_mute:
enabled: false
dir: /app/data/muted
default_hours: 12
# Embedded web dashboard. Enable with a non-empty password.
# Visit http://<host>:<port>/ for status, /events for history,
# /settings to edit this file from the browser.
dashboard:
enabled: false
host: 0.0.0.0
port: 8080
username: admin
password: ""
# Optional external integrations.
integrations:
# Uptime Kuma: optionally use a public status page as an extra
# reachability check per container.
uptime_kuma:
enabled: false
url: "https://status.example.com"
status_page_slug: "default"
# Portainer API integration: used by the advanced recovery actions
# `portainer_stack_redeploy` and `restart_then_redeploy`, which can
# recover containers whose network namespace is tied to a VPN sidecar.
# Leave disabled unless you need it.
#
# Token options (pick one per environment):
# api_token_env: "ENV_VAR_NAME" — reads token from that env var at
# runtime (preferred; not stored in config)
# api_token: "ptr_..." — embed token directly in this file
portainer:
enabled: false
default_environment: local_docker
stack_redeploy_cooldown_seconds: 300
post_redeploy_wait_seconds: 90
environments:
local_docker:
base_url: "http://portainer.example.local:9000"
api_token_env: "PORTAINER_API_TOKEN"
endpoint_id: 1
verify_ssl: false
containers:
# Minimal entry: Inspector only acts on containers listed here.
# Each key is the Docker container name on your host.
example-web:
enabled: true
max_error_count: 5
cooldown_seconds: 300
grace_period_seconds: 120
max_restarts_per_hour: 3
restart_on:
- UNHEALTHY
- NOT RUNNING
- ERROR
# Example with an opt-in HTTP reachability check. Useful when Docker
# reports a container as healthy but it's not actually serving
# requests (common with VPN-routed containers whose tunnel drops).
example-api:
enabled: true
max_error_count: 5
cooldown_seconds: 300
grace_period_seconds: 120
max_restarts_per_hour: 3
color: "#60a5fa"
restart_on:
- UNHEALTHY
- NOT RUNNING
- ERROR
- UNREACHABLE
http_check:
enabled: true
url: "http://example-api:8080/health"
timeout_seconds: 5
expected_status: 200