84 lines
3.3 KiB
YAML
84 lines
3.3 KiB
YAML
# Services: status monitor, Docker containers, Portainer
|
|
- name: Services
|
|
columns:
|
|
- size: full
|
|
widgets:
|
|
- type: server-stats
|
|
title: Server
|
|
servers:
|
|
- type: local
|
|
name: Services
|
|
mountpoints:
|
|
"/":
|
|
name: Root
|
|
"/srv/media":
|
|
name: Media
|
|
"/backup":
|
|
name: Backup
|
|
- type: monitor
|
|
title: Service status
|
|
sites:
|
|
- title: Jellyfin
|
|
url: https://jellyfin.internal
|
|
icon: mdi:television-play
|
|
- title: Seer
|
|
url: https://seerr.internal
|
|
icon: mdi:movie-search
|
|
- title: Radarr
|
|
url: https://radarr.internal
|
|
icon: mdi:film
|
|
- title: Sonarr
|
|
url: https://sonarr.internal
|
|
icon: mdi:television
|
|
- title: Lidarr
|
|
url: https://lidarr.internal
|
|
icon: mdi:music
|
|
- title: Prowlarr
|
|
url: https://prowlarr.internal
|
|
icon: mdi:radar
|
|
- title: qBittorrent
|
|
url: https://qbit.internal
|
|
icon: mdi:download
|
|
- title: Portainer
|
|
url: https://portainer.internal
|
|
icon: mdi:docker
|
|
- title: Immich
|
|
url: https://photo.internal
|
|
icon: mdi:image-multiple
|
|
- title: Navidrome
|
|
url: https://music.internal
|
|
icon: mdi:music-box-multiple
|
|
- title: CopyParty
|
|
url: https://copyparty.internal
|
|
icon: mdi:folder-multiple
|
|
- title: Gitea
|
|
url: https://git.internal
|
|
icon: mdi:git
|
|
- title: Grafana
|
|
url: https://grafana.internal
|
|
icon: mdi:chart-line
|
|
- type: docker-containers
|
|
title: Docker
|
|
show-stats: true
|
|
- type: custom-api
|
|
title: Portainer
|
|
title-url: https://portainer.internal
|
|
cache: 1h
|
|
url: ${PORTAINER_URL}/api/endpoints/${PORTAINER_ENDPOINT_ID}
|
|
headers:
|
|
X-API-Key: ${PORTAINER_API_KEY}
|
|
template: |
|
|
<style>.list-horizontal-text.no-bullets > *:not(:last-child)::after { content: none !important; } .list-horizontal-text.no-bullets > *:not(:last-child) { margin-right: 1em; }</style>
|
|
<div class="list list-horizontal-text no-bullets">
|
|
<span><strong>{{ .JSON.String "Name" }}</strong></span>
|
|
<span>Containers: {{ .JSON.Int "Snapshots.0.ContainerCount" }}</span>
|
|
<span>Volumes: {{ .JSON.Int "Snapshots.0.VolumeCount" }}</span>
|
|
<span>Networks: {{ .JSON.Int "Snapshots.0.DockerSnapshotRaw.Networks.#" }}</span>
|
|
</div>
|
|
<ul class="list list-gap-4 margin-top-10">
|
|
<li>Running <strong>{{ .JSON.Int "Snapshots.0.RunningContainerCount" }}</strong></li>
|
|
<li>Healthy <strong>{{ .JSON.Int "Snapshots.0.HealthyContainerCount" }}</strong></li>
|
|
<li>Stopped <strong>{{ .JSON.Int "Snapshots.0.StoppedContainerCount" }}</strong></li>
|
|
<li>Unhealthy <strong>{{ .JSON.Int "Snapshots.0.DockerSnapshotRaw.Containers.#(Health=\"unhealthy\").#" }}</strong></li>
|
|
</ul>
|