743 lines
29 KiB
YAML
743 lines
29 KiB
YAML
server:
|
|
proxied: true
|
|
|
|
branding:
|
|
app-name: KalliLab Dashboard
|
|
logo-text: KL
|
|
hide-footer: true
|
|
|
|
theme:
|
|
background-color: 220 13 11
|
|
primary-color: 170 56 58
|
|
positive-color: 135 42 52
|
|
negative-color: 0 72 62
|
|
contrast-multiplier: 1.15
|
|
text-saturation-multiplier: 0.8
|
|
disable-picker: false
|
|
|
|
pages:
|
|
- name: Homelab
|
|
slug: home
|
|
width: wide
|
|
head-widgets:
|
|
- type: search
|
|
search-engine: duckduckgo
|
|
new-tab: true
|
|
autofocus: true
|
|
placeholder: Suche im Web oder springe per Bang...
|
|
bangs:
|
|
- title: Gitea
|
|
shortcut: "!git"
|
|
url: https://git.kaleschke.info/explore/repos?q={QUERY}
|
|
- title: Paperless
|
|
shortcut: "!doc"
|
|
url: https://paperless.kaleschke.info/documents?query={QUERY}
|
|
- title: Nextcloud
|
|
shortcut: "!cloud"
|
|
url: https://cloud.kaleschke.info/apps/files/?dir=/{QUERY}
|
|
- title: Komodo
|
|
shortcut: "!komodo"
|
|
url: https://komodo.kaleschke.info
|
|
columns:
|
|
- size: small
|
|
widgets:
|
|
- type: clock
|
|
hour-format: 24h
|
|
timezones:
|
|
- timezone: Europe/Berlin
|
|
label: Berlin
|
|
|
|
- type: calendar
|
|
first-day-of-week: monday
|
|
|
|
- type: server-stats
|
|
title: Host Snapshot
|
|
servers:
|
|
- type: local
|
|
name: Kallilabcore
|
|
hide-mountpoints-by-default: false
|
|
|
|
- type: bookmarks
|
|
title: Direkte Einstiege
|
|
groups:
|
|
- title: Core
|
|
color: 170 56 58
|
|
links:
|
|
- title: Home
|
|
url: https://home.kaleschke.info
|
|
icon: sh:homepage
|
|
- title: Komodo
|
|
url: https://komodo.kaleschke.info
|
|
icon: sh:komodo
|
|
- title: Gitea
|
|
url: https://git.kaleschke.info
|
|
icon: si:gitea
|
|
- title: Monitoring
|
|
url: https://monitoring.kaleschke.info
|
|
icon: si:grafana
|
|
- title: Ops
|
|
color: 45 70 55
|
|
links:
|
|
- title: Borg
|
|
url: https://borg.kaleschke.info
|
|
icon: mdi:archive
|
|
- title: Uptime
|
|
url: https://uptime.kaleschke.info
|
|
icon: sh:uptime-kuma
|
|
- title: Glances
|
|
url: https://glances.kaleschke.info
|
|
icon: sh:glances
|
|
- title: Scrutiny
|
|
url: https://scrutiny.kaleschke.info
|
|
icon: sh:scrutiny
|
|
|
|
- size: full
|
|
widgets:
|
|
- type: group
|
|
widgets:
|
|
- type: custom-api
|
|
title: Immich
|
|
title-url: https://immich.kaleschke.info
|
|
cache: 10m
|
|
url: http://immich_server:2283/api/server/statistics
|
|
headers:
|
|
x-api-key: ${GLANCE_IMMICH_API_KEY}
|
|
subrequests:
|
|
storage:
|
|
url: http://immich_server:2283/api/server/storage
|
|
headers:
|
|
x-api-key: ${GLANCE_IMMICH_API_KEY}
|
|
template: |
|
|
{{ $photos := .JSON.Int "photos" }}
|
|
{{ $videos := .JSON.Int "videos" }}
|
|
{{ $usageGiB := div (toFloat (.JSON.Int "usage")) 1073741824.0 }}
|
|
{{ $storage := .Subrequest "storage" }}
|
|
{{ $storageOK := and (ge $storage.Response.StatusCode 200) (le $storage.Response.StatusCode 299) }}
|
|
{{ $percentage := 0.0 }}
|
|
{{ if $storageOK }}{{ $percentage = $storage.JSON.Float "diskUsagePercentage" }}{{ end }}
|
|
<div class="flex justify-between text-center">
|
|
<div>
|
|
<div class="color-highlight size-h3">{{ $photos | formatNumber }}</div>
|
|
<div class="size-h6 uppercase">Fotos</div>
|
|
</div>
|
|
<div>
|
|
<div class="color-highlight size-h3">{{ $videos | formatNumber }}</div>
|
|
<div class="size-h6 uppercase">Videos</div>
|
|
</div>
|
|
<div>
|
|
<div class="color-highlight size-h3">{{ printf "%.0f" $usageGiB }} GiB</div>
|
|
<div class="size-h6 uppercase">Medien</div>
|
|
</div>
|
|
</div>
|
|
<div style="height: 8px; margin-top: 14px; border-radius: 999px; overflow: hidden; background: color-mix(in srgb, var(--color-text-subdue) 22%, transparent);">
|
|
<div style="height: 100%; width: {{ if $storageOK }}{{ printf "%.1f" $percentage }}%{{ else }}0%{{ end }}; border-radius: 999px; background: var(--color-primary);"></div>
|
|
</div>
|
|
<div class="size-h6 color-subdue" style="margin-top: 8px;">{{ if $storageOK }}{{ printf "%.1f" $percentage }}% Speicher belegt{{ else }}Speicher API nicht verfuegbar{{ end }}</div>
|
|
|
|
- type: custom-api
|
|
title: Paperless
|
|
title-url: https://paperless.kaleschke.info
|
|
cache: 5m
|
|
url: http://paperless-ngx:8000/api/statistics/
|
|
headers:
|
|
Authorization: Token ${GLANCE_PAPERLESS_TOKEN}
|
|
Accept: application/json
|
|
template: |
|
|
<div class="flex justify-between text-center">
|
|
<div>
|
|
<div class="color-highlight size-h3">{{ .JSON.Int "documents_total" | formatNumber }}</div>
|
|
<div class="size-h6 uppercase">Dokumente</div>
|
|
</div>
|
|
<div>
|
|
<div class="color-highlight size-h3">{{ .JSON.Int "documents_inbox" | formatNumber }}</div>
|
|
<div class="size-h6 uppercase">Inbox</div>
|
|
</div>
|
|
<div>
|
|
<div class="color-highlight size-h3">{{ .JSON.Int "character_count" | formatNumber }}</div>
|
|
<div class="size-h6 uppercase">Zeichen</div>
|
|
</div>
|
|
</div>
|
|
|
|
- type: group
|
|
widgets:
|
|
- type: custom-api
|
|
title: Internet Speed
|
|
title-url: https://speedtest.kaleschke.info
|
|
cache: 1h
|
|
url: http://speedtest-tracker/api/v1/results/latest
|
|
headers:
|
|
Authorization: Bearer ${GLANCE_SPEEDTEST_API_TOKEN}
|
|
Accept: application/json
|
|
subrequests:
|
|
stats:
|
|
url: http://speedtest-tracker/api/v1/stats
|
|
headers:
|
|
Authorization: Bearer ${GLANCE_SPEEDTEST_API_TOKEN}
|
|
Accept: application/json
|
|
template: |
|
|
{{ $stats := .Subrequest "stats" }}
|
|
{{ $downloadChange := percentChange (.JSON.Float "data.download_bits") ($stats.JSON.Float "data.download.avg_bits") }}
|
|
{{ $uploadChange := percentChange (.JSON.Float "data.upload_bits") ($stats.JSON.Float "data.upload.avg_bits") }}
|
|
{{ $pingChange := percentChange (.JSON.Float "data.ping") ($stats.JSON.Float "data.ping.avg") }}
|
|
<div class="flex justify-between text-center">
|
|
<div>
|
|
<div class="size-small {{ if gt $downloadChange 0.0 }}color-positive{{ else if lt $downloadChange 0.0 }}color-negative{{ else }}color-primary{{ end }}">{{ $downloadChange | printf "%+.1f%%" }}</div>
|
|
<div class="color-highlight size-h3">{{ .JSON.Float "data.download_bits" | mul 0.000001 | printf "%.1f" }}</div>
|
|
<div class="size-h6 uppercase">Download</div>
|
|
</div>
|
|
<div>
|
|
<div class="size-small {{ if gt $uploadChange 0.0 }}color-positive{{ else if lt $uploadChange 0.0 }}color-negative{{ else }}color-primary{{ end }}">{{ $uploadChange | printf "%+.1f%%" }}</div>
|
|
<div class="color-highlight size-h3">{{ .JSON.Float "data.upload_bits" | mul 0.000001 | printf "%.1f" }}</div>
|
|
<div class="size-h6 uppercase">Upload</div>
|
|
</div>
|
|
<div>
|
|
<div class="size-small {{ if lt $pingChange 0.0 }}color-positive{{ else if gt $pingChange 0.0 }}color-negative{{ else }}color-primary{{ end }}">{{ $pingChange | printf "%+.1f%%" }}</div>
|
|
<div class="color-highlight size-h3">{{ .JSON.Float "data.ping" | printf "%.0f ms" }}</div>
|
|
<div class="size-h6 uppercase">Ping</div>
|
|
</div>
|
|
</div>
|
|
|
|
- type: custom-api
|
|
title: Drive Health
|
|
title-url: https://scrutiny.kaleschke.info
|
|
cache: 1h
|
|
url: http://scrutiny:8080/api/summary
|
|
method: GET
|
|
options:
|
|
filter_archived: true
|
|
sort_by: device.device_name
|
|
sort_order: asc
|
|
template: |
|
|
{{- $filterArchived := .Options.filter_archived }}
|
|
{{- $sortBy := .Options.sort_by }}
|
|
{{- $sortOrder := .Options.sort_order }}
|
|
{{- $drives := .JSON.Array "data.summary|@values" }}
|
|
{{- $sorted := $drives }}
|
|
{{- if or (eq $sortBy "device.capacity") (eq $sortBy "smart.power_on_hours") }}
|
|
{{- $sorted = sortByInt $sortBy $sortOrder $drives }}
|
|
{{- else }}
|
|
{{- $sorted = sortByString $sortBy $sortOrder $drives }}
|
|
{{- end }}
|
|
{{- $total := 0 }}
|
|
{{- range $sorted }}
|
|
{{- $archived := .Get "device.archived" }}
|
|
{{- $archivedBool := false }}
|
|
{{- if $archived }}{{- $archivedBool = eq $archived.Raw "true" }}{{- end }}
|
|
{{- if and $filterArchived $archivedBool }}{{- continue }}{{- end }}
|
|
{{- $total = add $total 1 }}
|
|
{{- end }}
|
|
{{- $count := 0 }}
|
|
{{- range $sorted }}
|
|
{{- $archived := .Get "device.archived" }}
|
|
{{- $archivedBool := false }}
|
|
{{- if $archived }}{{- $archivedBool = eq $archived.Raw "true" }}{{- end }}
|
|
{{- if and $filterArchived $archivedBool }}{{- continue }}{{- end }}
|
|
{{- $count = add $count 1 }}
|
|
{{- $device := .Get "device" }}
|
|
{{- $deviceName := $device.String "device_name" }}
|
|
{{- $model := $device.String "model_name" }}
|
|
{{- $wwn := $device.String "wwn" }}
|
|
{{- $days := printf "%.0f" (div (.Get "smart.power_on_hours").Num 24) }}
|
|
{{- $capacity := printf "%.0f" (div (.Get "device.capacity").Num 1000000000000) }}
|
|
{{- $status := (.Get "device.device_status").Num }}
|
|
{{- $latestTemp := index (.Array "temp_history") (sub (len (.Array "temp_history")) 1) }}
|
|
{{- $latestTempValue := $latestTemp.Int "temp" }}
|
|
<div class="flex justify-between items-center" style="gap: 12px; margin-top: 10px;">
|
|
<a href="https://scrutiny.kaleschke.info/web/device/{{ $wwn }}" target="_blank">
|
|
<div class="color-highlight" style="font-weight: 700; text-transform: uppercase;">/DEV/{{ $deviceName }} - {{ $capacity }}TB - {{ $latestTempValue }}C</div>
|
|
<div class="size-h6 color-subdue">{{ $model }} - {{ $days }} Tage Laufzeit</div>
|
|
</a>
|
|
<span class="{{ if eq $status 0.0 }}color-positive{{ else }}color-negative{{ end }}" style="font-size: 20px;">•</span>
|
|
</div>
|
|
{{- if lt $count $total }}<hr class="color-secondary" style="margin: 10px 0; border: none; border-bottom: 1px solid currentColor;" />{{- end }}
|
|
{{- end }}
|
|
|
|
- type: monitor
|
|
title: Core, Security und Ingress
|
|
cache: 1m
|
|
sites:
|
|
- title: Traefik
|
|
url: https://traefik.kaleschke.info
|
|
check-url: http://traefik:8082/metrics
|
|
icon: si:traefikproxy
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Authelia
|
|
url: https://auth.kaleschke.info
|
|
check-url: http://authelia:9091/api/health
|
|
icon: si:authelia
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Gitea
|
|
url: https://git.kaleschke.info
|
|
check-url: http://gitea:3000/api/healthz
|
|
icon: si:gitea
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Komodo
|
|
url: https://komodo.kaleschke.info
|
|
check-url: http://komodo-core:9120
|
|
icon: sh:komodo
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Vaultwarden
|
|
url: https://vault.kaleschke.info
|
|
check-url: http://vaultwarden/alive
|
|
icon: si:vaultwarden
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: AdGuard Home
|
|
url: http://192.168.178.58:8082
|
|
check-url: http://adguard
|
|
icon: si:adguard
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
|
|
- type: monitor
|
|
title: Apps
|
|
cache: 1m
|
|
sites:
|
|
- title: Paperless-ngx
|
|
url: https://paperless.kaleschke.info
|
|
check-url: http://paperless-ngx:8000
|
|
icon: sh:paperless-ngx
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Paperless-GPT
|
|
url: https://paperless-gpt.kaleschke.info
|
|
check-url: http://paperless-gpt:8080
|
|
icon: mdi:robot
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Immich
|
|
url: https://immich.kaleschke.info
|
|
check-url: http://immich_server:2283/api/server/ping
|
|
icon: si:immich
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Mealie
|
|
url: https://mealie.kaleschke.info
|
|
check-url: http://mealie:9000
|
|
icon: sh:mealie
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Nextcloud
|
|
url: https://cloud.kaleschke.info
|
|
check-url: http://nextcloud/status.php
|
|
icon: si:nextcloud
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: ntfy
|
|
url: https://ntfy.kaleschke.info
|
|
check-url: http://ntfy/v1/health
|
|
icon: si:ntfy
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Mail Archiver
|
|
url: https://mail.kaleschke.info
|
|
check-url: http://mail-archiver:5000
|
|
icon: mdi:email-archive
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: BentoPDF
|
|
url: https://pdf.kaleschke.info
|
|
check-url: http://bentopdf:8080
|
|
icon: mdi:file-pdf-box
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
|
|
- type: monitor
|
|
title: Operations und Observability
|
|
cache: 1m
|
|
sites:
|
|
- title: Glance
|
|
url: https://glance.kaleschke.info
|
|
check-url: http://glance:8080
|
|
icon: sh:glance
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Homepage
|
|
url: https://home.kaleschke.info
|
|
check-url: http://homepage:3000
|
|
icon: sh:homepage
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Monitoring Grafana
|
|
url: https://monitoring.kaleschke.info
|
|
check-url: http://monitoring-grafana:3000/api/health
|
|
icon: si:grafana
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Uptime Kuma
|
|
url: https://uptime.kaleschke.info
|
|
check-url: http://uptime-kuma:3001
|
|
icon: sh:uptime-kuma
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Glances
|
|
url: https://glances.kaleschke.info
|
|
check-url: http://glances:61208
|
|
icon: sh:glances
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Scrutiny
|
|
url: https://scrutiny.kaleschke.info
|
|
check-url: http://scrutiny:8080
|
|
icon: sh:scrutiny
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Speedtest Tracker
|
|
url: https://speedtest.kaleschke.info
|
|
check-url: http://speedtest-tracker
|
|
icon: sh:speedtest-tracker
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Filebrowser
|
|
url: https://files.kaleschke.info
|
|
check-url: http://filebrowser
|
|
icon: sh:filebrowser
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: code-server
|
|
url: https://code.kaleschke.info
|
|
check-url: http://code-server:8443
|
|
icon: sh:code-server
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
- title: Borg UI
|
|
url: https://borg.kaleschke.info
|
|
check-url: http://borg-ui:8081
|
|
icon: mdi:archive-sync
|
|
timeout: 5s
|
|
alt-status-codes: [200, 302, 401, 403]
|
|
|
|
- size: small
|
|
widgets:
|
|
- type: docker-containers
|
|
title: Core Container
|
|
category: core
|
|
hide-by-default: true
|
|
sock-path: tcp://glance-docker-socket-proxy:2375
|
|
containers: &containers
|
|
traefik:
|
|
name: Traefik
|
|
icon: si:traefikproxy
|
|
url: https://traefik.kaleschke.info
|
|
description: Reverse Proxy
|
|
category: core
|
|
hide: false
|
|
gitea:
|
|
name: Gitea
|
|
icon: si:gitea
|
|
url: https://git.kaleschke.info
|
|
description: GitOps Origin
|
|
category: core
|
|
hide: false
|
|
authelia:
|
|
name: Authelia
|
|
icon: si:authelia
|
|
url: https://auth.kaleschke.info
|
|
description: ForwardAuth
|
|
category: core
|
|
hide: false
|
|
vaultwarden:
|
|
name: Vaultwarden
|
|
icon: si:vaultwarden
|
|
url: https://vault.kaleschke.info
|
|
description: Password Vault
|
|
category: core
|
|
hide: false
|
|
postgresql17:
|
|
name: PostgreSQL 17
|
|
icon: si:postgresql
|
|
description: Shared DB
|
|
category: core
|
|
hide: false
|
|
Redis:
|
|
name: Redis
|
|
icon: si:redis
|
|
description: Shared Cache
|
|
category: core
|
|
hide: false
|
|
adguard:
|
|
name: AdGuard
|
|
icon: si:adguard
|
|
url: http://192.168.178.58:8082
|
|
description: DNS Filter
|
|
category: core
|
|
hide: false
|
|
unbound:
|
|
name: Unbound
|
|
icon: mdi:dns
|
|
description: Upstream Resolver
|
|
category: core
|
|
hide: false
|
|
Tailscale-Docker:
|
|
name: Tailscale
|
|
icon: si:tailscale
|
|
description: VPN
|
|
category: core
|
|
hide: false
|
|
ddns-updater:
|
|
name: DDNS Updater
|
|
icon: mdi:cloud-sync
|
|
description: Cloudflare DNS
|
|
category: core
|
|
hide: false
|
|
paperless-ngx:
|
|
name: Paperless-ngx
|
|
icon: sh:paperless-ngx
|
|
url: https://paperless.kaleschke.info
|
|
description: Dokumente
|
|
category: apps
|
|
hide: false
|
|
paperless-gpt:
|
|
name: Paperless-GPT
|
|
icon: mdi:robot
|
|
url: https://paperless-gpt.kaleschke.info
|
|
description: Dokumenten-KI
|
|
category: apps
|
|
hide: false
|
|
immich_server:
|
|
name: Immich
|
|
icon: si:immich
|
|
url: https://immich.kaleschke.info
|
|
description: Fotos und Videos
|
|
category: apps
|
|
id: immich
|
|
hide: false
|
|
immich_postgres:
|
|
name: DB
|
|
parent: immich
|
|
category: apps
|
|
hide: false
|
|
immich_redis:
|
|
name: Redis
|
|
parent: immich
|
|
category: apps
|
|
hide: false
|
|
immich_machine_learning:
|
|
name: ML
|
|
parent: immich
|
|
category: apps
|
|
hide: false
|
|
mealie:
|
|
name: Mealie
|
|
icon: sh:mealie
|
|
url: https://mealie.kaleschke.info
|
|
description: Rezepte
|
|
category: apps
|
|
id: mealie
|
|
hide: false
|
|
mealie-postgres:
|
|
name: DB
|
|
parent: mealie
|
|
category: apps
|
|
hide: false
|
|
nextcloud:
|
|
name: Nextcloud
|
|
icon: si:nextcloud
|
|
url: https://cloud.kaleschke.info
|
|
description: Dateien und Sync
|
|
category: apps
|
|
id: nextcloud
|
|
hide: false
|
|
nextcloud-postgres:
|
|
name: DB
|
|
parent: nextcloud
|
|
category: apps
|
|
hide: false
|
|
nextcloud-redis:
|
|
name: Redis
|
|
parent: nextcloud
|
|
category: apps
|
|
hide: false
|
|
mail-archiver:
|
|
name: Mail Archiver
|
|
icon: mdi:email-archive
|
|
url: https://mail.kaleschke.info
|
|
description: Mail-Archiv
|
|
category: apps
|
|
hide: false
|
|
ntfy:
|
|
name: ntfy
|
|
icon: si:ntfy
|
|
url: https://ntfy.kaleschke.info
|
|
description: Push Alerts
|
|
category: apps
|
|
hide: false
|
|
bentopdf:
|
|
name: BentoPDF
|
|
icon: mdi:file-pdf-box
|
|
url: https://pdf.kaleschke.info
|
|
description: PDF Tools
|
|
category: apps
|
|
hide: false
|
|
homepage:
|
|
name: Homepage
|
|
icon: sh:homepage
|
|
url: https://home.kaleschke.info
|
|
description: Bestehendes Start-Dashboard
|
|
category: ops
|
|
hide: false
|
|
glance:
|
|
name: Glance
|
|
icon: sh:glance
|
|
url: https://glance.kaleschke.info
|
|
description: Homelab Uebersicht
|
|
category: ops
|
|
hide: false
|
|
glance-docker-socket-proxy:
|
|
name: Glance Socket Proxy
|
|
icon: si:docker
|
|
description: Read-only Docker API
|
|
category: ops
|
|
hide: false
|
|
monitoring-grafana:
|
|
name: Monitoring Grafana
|
|
icon: si:grafana
|
|
url: https://monitoring.kaleschke.info
|
|
description: Observability UI
|
|
category: ops
|
|
id: monitoring
|
|
hide: false
|
|
monitoring-prometheus:
|
|
name: Prometheus
|
|
parent: monitoring
|
|
category: ops
|
|
hide: false
|
|
monitoring-loki:
|
|
name: Loki
|
|
parent: monitoring
|
|
category: ops
|
|
hide: false
|
|
monitoring-promtail:
|
|
name: Promtail
|
|
parent: monitoring
|
|
category: ops
|
|
hide: false
|
|
monitoring-alertmanager:
|
|
name: Alertmanager
|
|
parent: monitoring
|
|
category: ops
|
|
hide: false
|
|
monitoring-alertmanager-ntfy-bridge:
|
|
name: ntfy Bridge
|
|
parent: monitoring
|
|
category: ops
|
|
hide: false
|
|
monitoring-blackbox-exporter:
|
|
name: Blackbox
|
|
parent: monitoring
|
|
category: ops
|
|
hide: false
|
|
monitoring-node-exporter:
|
|
name: Node Exporter
|
|
parent: monitoring
|
|
category: ops
|
|
hide: false
|
|
monitoring-cadvisor:
|
|
name: cAdvisor
|
|
parent: monitoring
|
|
category: ops
|
|
hide: false
|
|
monitoring-influxdb3-core:
|
|
name: InfluxDB 3
|
|
parent: monitoring
|
|
category: ops
|
|
hide: false
|
|
uptime-kuma:
|
|
name: Uptime Kuma
|
|
icon: sh:uptime-kuma
|
|
url: https://uptime.kaleschke.info
|
|
description: Uptime Checks
|
|
category: ops
|
|
hide: false
|
|
glances:
|
|
name: Glances
|
|
icon: sh:glances
|
|
url: https://glances.kaleschke.info
|
|
description: Host-Monitoring
|
|
category: ops
|
|
hide: false
|
|
scrutiny:
|
|
name: Scrutiny
|
|
icon: sh:scrutiny
|
|
url: https://scrutiny.kaleschke.info
|
|
description: SMART
|
|
category: ops
|
|
hide: false
|
|
speedtest-tracker:
|
|
name: Speedtest
|
|
icon: sh:speedtest-tracker
|
|
url: https://speedtest.kaleschke.info
|
|
description: WAN-Messung
|
|
category: ops
|
|
hide: false
|
|
filebrowser:
|
|
name: Filebrowser
|
|
icon: sh:filebrowser
|
|
url: https://files.kaleschke.info
|
|
description: Dateizugriff
|
|
category: ops
|
|
hide: false
|
|
code-server:
|
|
name: code-server
|
|
icon: sh:code-server
|
|
url: https://code.kaleschke.info
|
|
description: Web IDE
|
|
category: ops
|
|
hide: false
|
|
borg-ui:
|
|
name: Borg UI
|
|
icon: mdi:archive-sync
|
|
url: https://borg.kaleschke.info
|
|
description: Backup und Restore
|
|
category: ops
|
|
hide: false
|
|
hermes-dashboard:
|
|
name: Hermes
|
|
icon: mdi:shield-sparkles
|
|
url: https://hermes.kaleschke.info
|
|
description: Ops Agent UI
|
|
category: ops
|
|
id: hermes
|
|
hide: false
|
|
hermes-gateway:
|
|
name: Gateway
|
|
parent: hermes
|
|
category: ops
|
|
hide: false
|
|
komodo-core:
|
|
name: Komodo
|
|
icon: sh:komodo
|
|
url: https://komodo.kaleschke.info
|
|
description: Stack Manager
|
|
category: ops
|
|
id: komodo
|
|
hide: false
|
|
komodo-mongo:
|
|
name: Mongo
|
|
parent: komodo
|
|
category: ops
|
|
hide: false
|
|
komodo-periphery:
|
|
name: Periphery
|
|
parent: komodo
|
|
category: ops
|
|
hide: false
|
|
|
|
- type: docker-containers
|
|
title: App Container
|
|
category: apps
|
|
hide-by-default: true
|
|
sock-path: tcp://glance-docker-socket-proxy:2375
|
|
containers: *containers
|
|
|
|
- type: docker-containers
|
|
title: Ops Container
|
|
category: ops
|
|
hide-by-default: true
|
|
sock-path: tcp://glance-docker-socket-proxy:2375
|
|
containers: *containers
|