Remove the unused Glance dashboard

Drop the Glance stack, its home. route and DNS record, the glance.*
labels on every container, and the Glance restart in the Warhammer
feed cron script. Update docs to match.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Phil
2026-10-31 08:34:14 -06:00
co-authored by Claude Opus 5.5
parent 1601d47d4c
commit 5255049c10
41 changed files with 6 additions and 415 deletions
+1 -3
View File
@@ -69,7 +69,7 @@ The docker role is now organized into logical service groups under `roles/docker
- **communication/**: Social media
- GoToSocial (Fediverse)
- **monitoring/**: System monitoring and alerts
- Changedetection, Glance dashboard, AppriseAPI, Gotify, Cronmaster
- Changedetection, AppriseAPI, Gotify, Cronmaster
### Variable Management
**Critical**: This infrastructure uses a centralized variable hierarchy in `group_vars/all/`:
@@ -138,7 +138,6 @@ Common domains requiring hairpinning fixes:
- karakeep (formerly called hoarder) is deployed with both 'hoarder' and 'karakeep' tags for backward compatibility
- whenever i ask you what containers need updates, run dockcheck and return a list of containers needing updates
- when i ask for the status container updates i want you to run dockcheck on the docker host https://github.com/mag37/dockcheck?ref=selfh.st
- this is your reference for glance configuration https://github.com/glanceapp/glance/blob/main/docs/configuration.md#configuring-glance
## Variable Management Implementation Notes
**Major Infrastructure Update**: Variable management system was implemented to replace all hardcoded values with centralized variables.
@@ -157,7 +156,6 @@ Common domains requiring hairpinning fixes:
All templates now follow this pattern:
```yaml
# Use variables, not hardcoded values
glance.url: "https://{{ subdomains.service }}/"
networks:
default:
external: true
+1 -2
View File
@@ -40,7 +40,6 @@ The Docker role deploys and manages 21 self-hosted services organized into logic
### Monitoring
- **Changedetection** (Website change monitoring)
- **Glance** (Dashboard)
- **AppriseAPI** (Notification service)
- **Gotify** (Push notifications)
- **Cronmaster** (Scheduled container tasks)
@@ -90,7 +89,7 @@ The most comprehensive role, deploying 21 containerized services organized into
- **Media**: Audiobookshelf, Calibre, Karakeep, Manyfold
- **Productivity**: Paperless-NGX, Baikal, Syncthing, HeyForm, Dawarich, Obsidian LiveSync
- **Communication**: GoToSocial
- **Monitoring**: Glance dashboard, Changedetection, AppriseAPI, Gotify, Cronmaster
- **Monitoring**: Changedetection, AppriseAPI, Gotify, Cronmaster
- **Template-Driven**: All services use Jinja2 templates for consistent configuration
- **Category-Based Deployment**: Deploy services by category using Ansible tags
+2 -2
View File
@@ -15,8 +15,6 @@
domains:
- name: thesatelliteoflove.com
dns_records:
- name: "home"
ip: "{{ network.netcup_ip }}"
- name: "git"
ip: "{{ network.netcup_ip }}"
- name: "social"
@@ -72,6 +70,8 @@
removed_records:
- name: thesatelliteoflove.com
dns_records:
- name: "home"
ip: "{{ network.netcup_ip }}"
- name: "pin"
ip: "{{ network.netcup_ip }}"
- name: "code"
-1
View File
@@ -19,7 +19,6 @@ subdomains:
syncthing: "syncthing.{{ primary_domain }}"
loclog: "loclog.{{ primary_domain }}" # Dawarich
social: "social.{{ primary_domain }}" # GoToSocial
home: "home.{{ primary_domain }}" # Glance
watcher: "watcher.{{ primary_domain }}" # Changedetection
appriseapi: "appriseapi.{{ primary_domain }}"
dockge: "dockge.{{ primary_domain }}"
+1 -1
View File
@@ -7,7 +7,7 @@ service_categories:
media: ["audiobookshelf", "calibre", "kavita", "dir2opds", "hoarder", "kosync", "manyfold"]
productivity: ["paperlessngx", "baikal", "syncthing", "heyform", "dawarich", "obsidian-livesync", "gokapi"]
communication: ["gotosocial", "listmonk"]
monitoring: ["glance", "changedetection", "appriseapi", "gotify", "cronmaster"]
monitoring: ["changedetection", "appriseapi", "gotify", "cronmaster"]
# Common service configuration
services:
-2
View File
@@ -12,7 +12,6 @@ Manages scheduled tasks and automated maintenance jobs for the infrastructure.
1. Creates a temporary directory `/tmp/warhammer_feed`
2. Runs a custom Docker container (`git.thesatelliteoflove.com/phil/rss-warhammer`) to generate RSS feed
3. Copies the generated `warhammer_rss_feed.xml` to `/opt/stacks/caddy/site/tsol/feeds/`
4. Restarts the Glance dashboard stack to reflect the updated feed
## Files Managed
- `/usr/local/bin/update_warhammer_feed.sh` - RSS feed update script
@@ -23,7 +22,6 @@ Manages scheduled tasks and automated maintenance jobs for the infrastructure.
- Depends on the following Docker stacks being deployed:
- Custom RSS generator container at `git.thesatelliteoflove.com/phil/rss-warhammer`
- Caddy web server stack at `/opt/stacks/caddy/`
- Glance dashboard stack at `/opt/stacks/glance/`
## Usage
This role is automatically applied as part of the main site.yml playbook with the `cron` tag.
@@ -10,6 +10,3 @@ docker run --rm -v "$TMP_DIR":/app/output git.thesatelliteoflove.com/phil/rss-wa
# Copy the generated file to the desired location
cp "$TMP_DIR/warhammer_rss_feed.xml" /opt/stacks/caddy/site/tsol/feeds
# Restart the Docker stack
docker compose -f /opt/stacks/glance/compose.yml restart
-7
View File
@@ -54,7 +54,6 @@ Deploys and manages a comprehensive self-hosted infrastructure with 24 container
- **Postiz** - Social media management
### Monitoring (`monitoring/`)
- **Glance** - Customizable dashboard with monitoring
- **Change Detection** - Website monitoring
- **Apprise API** - Unified notifications
- **Gotify** - Self-hosted push notification service
@@ -190,12 +189,6 @@ Services expect to be accessible via subdomains of configured domains:
## Monitoring & Management
### Glance Dashboard Integration
All services include Glance labels for dashboard monitoring:
- Service health status
- Container resource usage
- Parent-child relationships for multi-container services
### Operational Features
- Automatic container restart policies
- Health checks for database services
-7
View File
@@ -1,11 +1,4 @@
# roles/docker/handlers/main.yml
- name: restart glance
community.docker.docker_compose_v2:
project_src: /opt/stacks/glance
files:
- compose.yml
state: restarted
- name: restart caddy
community.docker.docker_compose_v2:
project_src: /opt/stacks/caddy
-29
View File
@@ -1,29 +0,0 @@
- name: make glance directories
ansible.builtin.file:
path: "{{ item }}"
state: directory
loop:
- /opt/stacks/glance
- /opt/stacks/glance/config
- name: Template out the compose file
ansible.builtin.template:
src: glance-compose.yml.j2
dest: /opt/stacks/glance/compose.yml
owner: root
mode: '0644'
- name: Template out the config file
ansible.builtin.template:
src: glance.yml.j2
dest: /opt/stacks/glance/config/glance.yml
owner: root
mode: '0640'
group: docker
notify: restart glance
- name: deploy glances stack
community.docker.docker_compose_v2:
project_src: /opt/stacks/glance
files:
- compose.yml
-4
View File
@@ -1,10 +1,6 @@
---
# Monitoring services - System monitoring, alerts, and dashboards
- name: Install glance
import_tasks: glance.yml
tags: glance
- name: Install changedetection
import_tasks: changedetection.yml
tags: changedetection
-4
View File
@@ -62,10 +62,6 @@ models.thesatelliteoflove.com {
}
home.thesatelliteoflove.com {
reverse_proxy authentik-server-1:9000
}
gotify.thesatelliteoflove.com {
reverse_proxy gotify:80
}
@@ -15,11 +15,6 @@ services:
extra_hosts:
- "{{ subdomains.gotify }}:{{ docker.hairpin_ip }}"
labels:
glance.name: Apprise
glance.icon: si:imessage
glance.url: https://{{ subdomains.appriseapi }}/
glance.description: Apprise api server
glance.id: apprise
mag37.dockcheck.update: true
volumes:
config:
@@ -13,10 +13,6 @@ services:
extra_hosts:
- '{{ subdomains.auth }}:{{ docker.hairpin_ip }}'
labels:
glance.name: Audiobookshelf
glance.icon: si:audiobookshelf
glance.url: https://{{ subdomains.audio }}/
glance.description: Audio book server
mag37.dockcheck.update: true
volumes:
audiobooks:
@@ -18,9 +18,6 @@ services:
POSTGRES_DB: ${PG_DB:-authentik}
env_file:
- .env
labels:
glance.parent: authentik
glance.name: DB
trout:
image: docker.io/library/redis:alpine
command: --save 60 1 --loglevel warning
@@ -33,9 +30,6 @@ services:
timeout: 3s
volumes:
- trout:/data
labels:
glance.parent: authentik
glance.name: Redis
server:
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.2.2}
restart: unless-stopped
@@ -54,12 +48,6 @@ services:
depends_on:
- postgresql
- trout
labels:
glance.name: Authentik
glance.icon: si:authentik
glance.url: https://{{ subdomains.auth }}/
glance.description: Authentication server
glance.id: authentik
worker:
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.2.2}
restart: unless-stopped
@@ -87,9 +75,6 @@ services:
depends_on:
- postgresql
- trout
labels:
glance.parent: authentik
glance.name: Worker
volumes:
database:
@@ -6,10 +6,6 @@ services:
- config:/var/www/baikal/config
- data:/var/www/baikal/Specific
labels:
glance.name: Baikal
glance.icon: si:protoncalendar
glance.url: https://{{ subdomains.cal }}/
glance.description: CalDav server
mag37.dockcheck.update: true
volumes:
config:
@@ -21,11 +21,6 @@ services:
extra_hosts:
- "{{ subdomains.pocketid }}:{{ docker.hairpin_ip }}"
labels:
glance.name: ByteStash
glance.icon: si:code
glance.url: https://{{ subdomains.bytestash }}/
glance.description: Code snippet manager
glance.id: bytestash
mag37.dockcheck.update: true
volumes:
bytestash_data:
@@ -12,10 +12,6 @@ services:
- caddy_data:/data
- caddy_config:/config
labels:
glance.name: Caddy
glance.icon: si:caddy
glance.url: https://{{ primary_domain }}/
glance.description: Reverse proxy
mag37.dockcheck.update: true
networks:
default:
@@ -14,10 +14,6 @@ services:
- books:/books
restart: unless-stopped
labels:
glance.name: Calibre
glance.icon: si:calibreweb
glance.url: https://{{ subdomains.books }}/
glance.description: Book server
mag37.dockcheck.update: true
volumes:
config:
@@ -5,11 +5,6 @@ services:
container_name: changedetection
hostname: changedetection
labels:
glance.name: Changedetection
glance.icon: si:watchtower
glance.url: https://{{ subdomains.watcher }}/
glance.description: Changedetection
glance.id: changedetection
mag37.dockcheck.update: true
volumes:
- changedetection-data:/datastore
@@ -95,8 +90,6 @@ services:
sockpuppetbrowser:
hostname: sockpuppetbrowser
labels:
glance.parent: changedetection
glance.name: Browser
mag37.dockcheck.update: true
image: dgtlmoon/sockpuppetbrowser:latest
cap_add:
@@ -19,12 +19,6 @@ services:
- /opt/stacks/cronmaster/data:/app/data
- /opt/stacks/cronmaster/snippets:/app/snippets
labels:
glance.url: "http://{{ network.docker_host_ip }}:40123/"
glance.title: CronMaster
glance.description: Cron job management interface
glance.group: Infrastructure
glance.parent: infrastructure
glance.name: CronMaster
mag37.dockcheck.update: true
networks:
default:
@@ -2,9 +2,6 @@ services:
dawarich_redis:
image: redis:7.4-alpine
container_name: dawarich_redis
labels:
glance.parent: dawarich
glance.name: Redis
volumes:
- dawarich_redis_data:/data
restart: always
@@ -17,9 +14,6 @@ services:
dawarich_db:
image: postgis/postgis:17-3.5-alpine
shm_size: 1G
labels:
glance.parent: dawarich
glance.name: DB
container_name: dawarich_db
volumes:
- dawarich_db_data:/var/lib/postgresql/data
@@ -38,12 +32,6 @@ services:
dawarich_app:
image: freikin/dawarich:latest
container_name: dawarich_app
labels:
glance.name: Dawarich
glance.icon: si:openstreetmap
glance.url: https://{{ subdomains.loclog }}/
glance.description: Dawarich
glance.id: dawarich
volumes:
- dawarich_public:/var/app/public
- dawarich_watched:/var/app/tmp/imports/watched
@@ -100,9 +88,6 @@ services:
dawarich_sidekiq:
image: freikin/dawarich:latest
container_name: dawarich_sidekiq
labels:
glance.parent: dawarich
glance.name: Sidekiq
volumes:
- dawarich_public:/var/app/public
- dawarich_watched:/var/app/tmp/imports/watched
@@ -16,10 +16,6 @@ services:
- -url=https://{{ subdomains.dir2opds }}
restart: unless-stopped
labels:
glance.name: dir2opds
glance.icon: si:book
glance.url: https://{{ subdomains.dir2opds }}/
glance.description: OPDS book catalog
mag37.dockcheck.update: true
networks:
default:
@@ -2,11 +2,6 @@ services:
dockge:
image: louislam/dockge:1
restart: unless-stopped
labels:
glance.name: Dockge
glance.icon: si:docker
glance.url: http://{{ network.tailscale_hostname }}:5001
glance.description: Docker management
ports:
# Host Port : Container Port
- 5001:5001
@@ -15,11 +15,6 @@ services:
- GITEA__mailer__PASSWD={{ vault_smtp.password }}
restart: unless-stopped
labels:
glance.name: Gitea
glance.icon: si:gitea
glance.url: https://{{ subdomains.git }}/
glance.description: Code repo
glance.id: gitea
mag37.dockcheck.update: true
volumes:
- gitea:/data
@@ -50,8 +45,6 @@ services:
- '{{ subdomains.auth }}:{{ docker.hairpin_ip }}'
- '{{ subdomains.git }}:{{ docker.hairpin_ip }}'
labels:
glance.parent: gitea
glance.name: Worker
mag37.dockcheck.update: true
volumes:
- ./runner-config.yaml:/config.yaml
@@ -1,23 +0,0 @@
services:
glance:
image: glanceapp/glance:latest
volumes:
- ./config:/app/config
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
- /var/run/docker.sock:/var/run/docker.sock
restart: unless-stopped
extra_hosts:
- '{{ primary_domain }}:{{ docker.hairpin_ip }}'
- '{{ subdomains.watcher }}:{{ docker.hairpin_ip }}'
labels:
glance.name: Glance
glance.icon: si:homepage
glance.url: https://{{ subdomains.home }}/
glance.description: Homepage app
glance.id: glance
mag37.dockcheck.update: true
networks:
default:
external: true
name: {{ docker.network_name }}
-149
View File
@@ -1,149 +0,0 @@
pages:
- name: Home
head-widgets:
- type: markets
hide-header: true
markets:
- symbol: SPY
name: S&P 500
- symbol: VTSAX
name: Vanguard Total Stock Market
- symbol: BAI
name: Blackrock AI
- symbol: NLR
name: VanEck Uranium+Nuclear Energy
- symbol: BITO
name: Bitcoin ETF
columns:
- size: full
widgets:
- type: search
search-engine: kagi
new-tab: true
- size: small
widgets:
- type: weather
location: Nederland, Colorado, United States
units: imperial
- type: custom-api
title: Air Quality
cache: 10m
url: https://api.waqi.info/feed/geo:39.9676367;-105.4037992/?token={{ vault_glance.air_quality_key }}
template: |
{% raw %}{{ $aqi := printf "%03s" (.JSON.String "data.aqi") }}
{{ $aqiraw := .JSON.String "data.aqi" }}
{{ $updated := .JSON.String "data.time.iso" }}
{{ $humidity := .JSON.String "data.iaqi.h.v" }}
{{ $ozone := .JSON.String "data.iaqi.o3.v" }}
{{ $pm25 := .JSON.String "data.iaqi.pm25.v" }}
{{ $pressure := .JSON.String "data.iaqi.p.v" }}
<div class="flex justify-between">
<div class="size-h5">
{{ if le $aqi "050" }}
<div class="color-positive">Good air quality</div>
{{ else if le $aqi "100" }}
<div class="color-primary">Moderate air quality</div>
{{ else }}
<div class="color-negative">Bad air quality</div>
{{ end }}
</div>
</div>
<div class="color-highlight size-h2">AQI: {{ $aqiraw }}</div>
<div style="border-bottom: 1px solid; margin-block: 10px;"></div>
<div class="margin-block-2">
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 10px;">
<div>
<div class="size-h3 color-highlight">{{ $humidity }}%</div>
<div class="size-h6">HUMIDITY</div>
</div>
<div>
<div class="size-h3 color-highlight">{{ $ozone }} μg/m³</div>
<div class="size-h6">OZONE</div>
</div>
<div>
<div class="size-h3 color-highlight">{{ $pm25 }} μg/m³</div>
<div class="size-h6">PM2.5</div>
</div>
<div>
<div class="size-h3 color-highlight">{{ $pressure }} hPa</div>
<div class="size-h6">PRESSURE</div>
</div>
</div>
<div class="size-h6" style="margin-top: 10px;">Last Updated at {{ slice $updated 11 16 }}</div>
</div>{% endraw %}
- name: Mini Painting
columns:
- size: small
widgets:
- type: twitch-channels
channels:
- warhammer
- marcofrisoninjm
- miniac
- next_level_painting
- monument_hobbies
- visit_the_chronicler
- size: full
widgets:
- type: rss
limit: 10
collapse-after: 3
cache: 3h
feeds:
- url: https://thesatelliteoflove.com/feeds/warhammer_rss_feed.xml
title: Warhammer Community
- url: https://yenneferofexeter.wordpress.com/feed/
title: Yennefer of Exeter
- name: Self Hosting
columns:
- size: small
widgets:
- type: releases
show-source-icon: true
repositories:
- advplyr/audiobookshelf
- go-gitea/gitea
- louislam/dockge
- glanceapp/glance
- hoarder-app/hoarder
- goauthentik/authentik
- superseriousbusiness/gotosocial
- caddyserver/caddy
- sabre-io/Baikal
- janeczku/calibre-web
- heyform/heyform
- paperless-ngx/paperless-ngx
- linuxserver/docker-calibre-web
- dgtlmoon/changedetection.io
- Freika/dawarich
- manyfold3d/manyfold
- caronc/apprise-api
- syncthing/syncthing
- size: full
widgets:
- type: rss
limit: 10
collapse-after: 3
cache: 3h
feeds:
- url: https://selfh.st/rss/
- url: https://www.jeffgeerling.com/blog.xml
- url: https://samwho.dev/rss.xml
- url: https://awesomekling.github.io/feed.xml
- url: https://ishadeed.com/feed.xml
title: Ahmad Shadeed
@@ -9,11 +9,6 @@ services:
- gokapi_data:/app/data
- gokapi_config:/app/config
labels:
glance.name: Gokapi
glance.icon: si:files
glance.url: https://{{ subdomains.gokapi }}/
glance.description: Lightweight file sharing
glance.id: gokapi
mag37.dockcheck.update: true
volumes:
gokapi_data:
@@ -9,10 +9,6 @@ services:
- GOTIFY_DEFAULTUSER_PASS={{ vault_gotify.admin_password }}
- TZ=America/Denver
labels:
glance.name: Gotify
glance.icon: si:gotify
glance.url: "https://{{ subdomains.gotify }}/"
glance.description: Push notification server
mag37.dockcheck.update: true
extra_hosts:
- "{{ subdomains.auth }}:{{ docker.hairpin_ip }}"
@@ -29,10 +25,6 @@ services:
depends_on:
- gotify
labels:
glance.name: iGotify Assistant
glance.icon: si:apple
glance.url: "https://{{ subdomains.gotify_assistant }}/"
glance.description: iOS notification assistant
mag37.dockcheck.update: true
extra_hosts:
- "{{ subdomains.auth }}:{{ docker.hairpin_ip }}"
@@ -32,18 +32,11 @@ services:
restart: "always"
labels:
docker-volume-backup.stop-during-backup: true
glance.name: GoToSocial
glance.icon: si:mastodon
glance.url: https://{{ subdomains.social }}/
glance.description: Fediverse server
glance.id: gotosocial
backup:
image: offen/docker-volume-backup:v2
restart: always
labels:
glance.parent: gotosocial
glance.name: Backup
mag37.dockcheck.update: true
environment:
BACKUP_FILENAME: gts-backup-%Y-%m-%dT%H-%M-%S.tar.gz
@@ -8,12 +8,6 @@ services:
depends_on:
- mongo
- keydb
labels:
glance.name: Heyform
glance.icon: si:googleforms
glance.url: https://{{ subdomains.heyform }}/
glance.description: Forms server
glance.id: heyform
environment:
- APP_HOMEPAGE_URL=http://{{ subdomains.heyform }}
- SESSION_KEY={{ vault_heyform.session_key }}
@@ -31,9 +25,6 @@ services:
mongo:
image: percona/percona-server-mongodb:4.4
restart: always
labels:
glance.parent: heyform
glance.name: MongoDB
volumes:
# Persist MongoDB data
- database:/data/db
@@ -42,9 +33,6 @@ services:
image: eqalpha/keydb:latest
restart: always
command: keydb-server --appendonly yes
labels:
glance.parent: heyform
glance.name: KeyDB
volumes:
# Persist KeyDB data
- keydb:/data
@@ -15,18 +15,11 @@ services:
DATA_DIR: /data
BROWSER_WEB_URL: http://chrome:9222
labels:
glance.name: Karakeep
glance.icon: si:wikibooks
glance.url: https://{{ subdomains.bookmarks }}/
glance.description: Bookmark manager
glance.id: karakeep
mag37.dockcheck.update: true
chrome:
image: gcr.io/zenika-hub/alpine-chrome:123
restart: unless-stopped
labels:
glance.name: Chrome
glance.parent: karakeep
mag37.dockcheck.update: true
command:
- --no-sandbox
@@ -39,8 +32,6 @@ services:
image: getmeili/meilisearch:v1.13.3
restart: unless-stopped
labels:
glance.name: Meilisearch
glance.parent: karakeep
mag37.dockcheck.update: true
env_file:
- .env
@@ -14,10 +14,6 @@ services:
- "{{ subdomains.pocketid }}:{{ docker.hairpin_ip }}"
restart: unless-stopped
labels:
glance.name: Kavita
glance.icon: si:book
glance.url: https://{{ subdomains.kavita }}/
glance.description: Book server
mag37.dockcheck.update: true
networks:
default:
@@ -11,10 +11,6 @@ services:
- ./data/redis:/var/lib/redis
restart: unless-stopped
labels:
glance.name: KOReader Sync
glance.icon: si:book
glance.url: https://{{ subdomains.kosync }}/
glance.description: KOReader reading progress sync
mag37.dockcheck.update: true
networks:
default:
@@ -23,11 +23,6 @@ services:
LISTMONK_ADMIN_PASSWORD: {{ vault_listmonk.admin_password }}
volumes:
- uploads:/listmonk/uploads
labels:
glance.name: Listmonk
glance.url: https://{{ subdomains.listmonk }}/
glance.description: Mailing list manager
glance.id: listmonk
db:
image: postgres:17-alpine
@@ -44,9 +39,6 @@ services:
retries: 6
volumes:
- listmonk-data:/var/lib/postgresql/data
labels:
glance.parent: listmonk
glance.name: DB
volumes:
uploads:
@@ -26,10 +26,6 @@ services:
extra_hosts:
- "{{ subdomains.pocketid }}:{{ docker.hairpin_ip }}"
labels:
glance.name: Manyfold
glance.icon: si:open3d
glance.url: https://{{ subdomains.models }}/
glance.description: STL Storage
mag37.dockcheck.update: true
restart: unless-stopped
# Optional, but recommended for better security
@@ -4,11 +4,6 @@ services:
container_name: obsidian-livesync
restart: unless-stopped
labels:
glance.name: Obsidian LiveSync
glance.icon: si:obsidian
glance.url: http://{{ network.docker_host_ip }}:5984
glance.description: Obsidian note synchronization
glance.id: obsidian-livesync
mag37.dockcheck.update: true
environment:
- SERVER_DOMAIN={{ network.docker_host_ip }}
@@ -2,9 +2,6 @@ services:
broker:
image: docker.io/library/redis:7
restart: unless-stopped
labels:
glance.parent: paperlessngx
glance.name: Redis
volumes:
- redisdata:/data
@@ -14,11 +11,6 @@ services:
labels:
# Stop during backup so the SQLite database in the data volume is consistent
docker-volume-backup.stop-during-backup: true
glance.name: Paperless NGX
glance.icon: si:paperlessngx
glance.url: https://{{ subdomains.paper }}/
glance.description: Document server
glance.id: paperlessngx
depends_on:
- broker
- gotenberg
@@ -40,9 +32,6 @@ services:
gotenberg:
image: docker.io/gotenberg/gotenberg:8.7
labels:
glance.parent: paperlessngx
glance.name: Gotenburg
restart: unless-stopped
# The gotenberg chromium route is used to convert .eml files. We do not
@@ -54,17 +43,12 @@ services:
tika:
image: docker.io/apache/tika:latest
labels:
glance.parent: paperlessngx
glance.name: Tika
restart: unless-stopped
backup:
image: offen/docker-volume-backup:v2
restart: always
labels:
glance.parent: paperlessngx
glance.name: Backup
mag37.dockcheck.update: true
environment:
BACKUP_FILENAME: pngx-backup-%Y-%m-%dT%H-%M-%S.tar.gz
@@ -13,11 +13,6 @@ services:
retries: 2
start_period: 10s
labels:
glance.name: Pocket ID
glance.icon: si:passkey
glance.url: https://{{ subdomains.pocketid }}/
glance.description: Passkey OIDC provider
glance.id: pocketid
mag37.dockcheck.update: true
networks:
@@ -4,11 +4,6 @@ services:
container_name: syncthing
hostname: my-syncthing
labels:
glance.name: Syncthing
glance.icon: si:syncthing
glance.url: https://{{ network.tailscale_hostname }}:8384
glance.description: Syncthing core
glance.id: Syncthing
mag37.dockcheck.update: true
environment:
- PUID=1000
+1 -1
View File
@@ -13,7 +13,7 @@
├── media/ (audiobookshelf, calibre, ghost, pinchflat, pinry, hoarder, manyfold)
├── productivity/ (paperless, baikal, syncthing, mmdl, heyform, dawarich, palmr, obsidian-livesync)
├── communication/ (gotosocial, postiz)
└── monitoring/ (glance, changedetection, appriseapi, gotify)
└── monitoring/ (changedetection, appriseapi, gotify)
```
- **COMPLETED**: All services organized into logical categories with category-level tags