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:
@@ -69,7 +69,7 @@ The docker role is now organized into logical service groups under `roles/docker
|
|||||||
- **communication/**: Social media
|
- **communication/**: Social media
|
||||||
- GoToSocial (Fediverse)
|
- GoToSocial (Fediverse)
|
||||||
- **monitoring/**: System monitoring and alerts
|
- **monitoring/**: System monitoring and alerts
|
||||||
- Changedetection, Glance dashboard, AppriseAPI, Gotify, Cronmaster
|
- Changedetection, AppriseAPI, Gotify, Cronmaster
|
||||||
|
|
||||||
### Variable Management
|
### Variable Management
|
||||||
**Critical**: This infrastructure uses a centralized variable hierarchy in `group_vars/all/`:
|
**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
|
- 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
|
- 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
|
- 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
|
## Variable Management Implementation Notes
|
||||||
**Major Infrastructure Update**: Variable management system was implemented to replace all hardcoded values with centralized variables.
|
**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:
|
All templates now follow this pattern:
|
||||||
```yaml
|
```yaml
|
||||||
# Use variables, not hardcoded values
|
# Use variables, not hardcoded values
|
||||||
glance.url: "https://{{ subdomains.service }}/"
|
|
||||||
networks:
|
networks:
|
||||||
default:
|
default:
|
||||||
external: true
|
external: true
|
||||||
|
|||||||
@@ -40,7 +40,6 @@ The Docker role deploys and manages 21 self-hosted services organized into logic
|
|||||||
|
|
||||||
### Monitoring
|
### Monitoring
|
||||||
- **Changedetection** (Website change monitoring)
|
- **Changedetection** (Website change monitoring)
|
||||||
- **Glance** (Dashboard)
|
|
||||||
- **AppriseAPI** (Notification service)
|
- **AppriseAPI** (Notification service)
|
||||||
- **Gotify** (Push notifications)
|
- **Gotify** (Push notifications)
|
||||||
- **Cronmaster** (Scheduled container tasks)
|
- **Cronmaster** (Scheduled container tasks)
|
||||||
@@ -90,7 +89,7 @@ The most comprehensive role, deploying 21 containerized services organized into
|
|||||||
- **Media**: Audiobookshelf, Calibre, Karakeep, Manyfold
|
- **Media**: Audiobookshelf, Calibre, Karakeep, Manyfold
|
||||||
- **Productivity**: Paperless-NGX, Baikal, Syncthing, HeyForm, Dawarich, Obsidian LiveSync
|
- **Productivity**: Paperless-NGX, Baikal, Syncthing, HeyForm, Dawarich, Obsidian LiveSync
|
||||||
- **Communication**: GoToSocial
|
- **Communication**: GoToSocial
|
||||||
- **Monitoring**: Glance dashboard, Changedetection, AppriseAPI, Gotify, Cronmaster
|
- **Monitoring**: Changedetection, AppriseAPI, Gotify, Cronmaster
|
||||||
- **Template-Driven**: All services use Jinja2 templates for consistent configuration
|
- **Template-Driven**: All services use Jinja2 templates for consistent configuration
|
||||||
- **Category-Based Deployment**: Deploy services by category using Ansible tags
|
- **Category-Based Deployment**: Deploy services by category using Ansible tags
|
||||||
|
|
||||||
|
|||||||
@@ -15,8 +15,6 @@
|
|||||||
domains:
|
domains:
|
||||||
- name: thesatelliteoflove.com
|
- name: thesatelliteoflove.com
|
||||||
dns_records:
|
dns_records:
|
||||||
- name: "home"
|
|
||||||
ip: "{{ network.netcup_ip }}"
|
|
||||||
- name: "git"
|
- name: "git"
|
||||||
ip: "{{ network.netcup_ip }}"
|
ip: "{{ network.netcup_ip }}"
|
||||||
- name: "social"
|
- name: "social"
|
||||||
@@ -72,6 +70,8 @@
|
|||||||
removed_records:
|
removed_records:
|
||||||
- name: thesatelliteoflove.com
|
- name: thesatelliteoflove.com
|
||||||
dns_records:
|
dns_records:
|
||||||
|
- name: "home"
|
||||||
|
ip: "{{ network.netcup_ip }}"
|
||||||
- name: "pin"
|
- name: "pin"
|
||||||
ip: "{{ network.netcup_ip }}"
|
ip: "{{ network.netcup_ip }}"
|
||||||
- name: "code"
|
- name: "code"
|
||||||
|
|||||||
@@ -19,7 +19,6 @@ subdomains:
|
|||||||
syncthing: "syncthing.{{ primary_domain }}"
|
syncthing: "syncthing.{{ primary_domain }}"
|
||||||
loclog: "loclog.{{ primary_domain }}" # Dawarich
|
loclog: "loclog.{{ primary_domain }}" # Dawarich
|
||||||
social: "social.{{ primary_domain }}" # GoToSocial
|
social: "social.{{ primary_domain }}" # GoToSocial
|
||||||
home: "home.{{ primary_domain }}" # Glance
|
|
||||||
watcher: "watcher.{{ primary_domain }}" # Changedetection
|
watcher: "watcher.{{ primary_domain }}" # Changedetection
|
||||||
appriseapi: "appriseapi.{{ primary_domain }}"
|
appriseapi: "appriseapi.{{ primary_domain }}"
|
||||||
dockge: "dockge.{{ primary_domain }}"
|
dockge: "dockge.{{ primary_domain }}"
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ service_categories:
|
|||||||
media: ["audiobookshelf", "calibre", "kavita", "dir2opds", "hoarder", "kosync", "manyfold"]
|
media: ["audiobookshelf", "calibre", "kavita", "dir2opds", "hoarder", "kosync", "manyfold"]
|
||||||
productivity: ["paperlessngx", "baikal", "syncthing", "heyform", "dawarich", "obsidian-livesync", "gokapi"]
|
productivity: ["paperlessngx", "baikal", "syncthing", "heyform", "dawarich", "obsidian-livesync", "gokapi"]
|
||||||
communication: ["gotosocial", "listmonk"]
|
communication: ["gotosocial", "listmonk"]
|
||||||
monitoring: ["glance", "changedetection", "appriseapi", "gotify", "cronmaster"]
|
monitoring: ["changedetection", "appriseapi", "gotify", "cronmaster"]
|
||||||
|
|
||||||
# Common service configuration
|
# Common service configuration
|
||||||
services:
|
services:
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ Manages scheduled tasks and automated maintenance jobs for the infrastructure.
|
|||||||
1. Creates a temporary directory `/tmp/warhammer_feed`
|
1. Creates a temporary directory `/tmp/warhammer_feed`
|
||||||
2. Runs a custom Docker container (`git.thesatelliteoflove.com/phil/rss-warhammer`) to generate RSS 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/`
|
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
|
## Files Managed
|
||||||
- `/usr/local/bin/update_warhammer_feed.sh` - RSS feed update script
|
- `/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:
|
- Depends on the following Docker stacks being deployed:
|
||||||
- Custom RSS generator container at `git.thesatelliteoflove.com/phil/rss-warhammer`
|
- Custom RSS generator container at `git.thesatelliteoflove.com/phil/rss-warhammer`
|
||||||
- Caddy web server stack at `/opt/stacks/caddy/`
|
- Caddy web server stack at `/opt/stacks/caddy/`
|
||||||
- Glance dashboard stack at `/opt/stacks/glance/`
|
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
This role is automatically applied as part of the main site.yml playbook with the `cron` tag.
|
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
|
# Copy the generated file to the desired location
|
||||||
cp "$TMP_DIR/warhammer_rss_feed.xml" /opt/stacks/caddy/site/tsol/feeds
|
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
|
|
||||||
|
|||||||
@@ -54,7 +54,6 @@ Deploys and manages a comprehensive self-hosted infrastructure with 24 container
|
|||||||
- **Postiz** - Social media management
|
- **Postiz** - Social media management
|
||||||
|
|
||||||
### Monitoring (`monitoring/`)
|
### Monitoring (`monitoring/`)
|
||||||
- **Glance** - Customizable dashboard with monitoring
|
|
||||||
- **Change Detection** - Website monitoring
|
- **Change Detection** - Website monitoring
|
||||||
- **Apprise API** - Unified notifications
|
- **Apprise API** - Unified notifications
|
||||||
- **Gotify** - Self-hosted push notification service
|
- **Gotify** - Self-hosted push notification service
|
||||||
@@ -190,12 +189,6 @@ Services expect to be accessible via subdomains of configured domains:
|
|||||||
|
|
||||||
## Monitoring & Management
|
## 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
|
### Operational Features
|
||||||
- Automatic container restart policies
|
- Automatic container restart policies
|
||||||
- Health checks for database services
|
- Health checks for database services
|
||||||
|
|||||||
@@ -1,11 +1,4 @@
|
|||||||
# roles/docker/handlers/main.yml
|
# 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
|
- name: restart caddy
|
||||||
community.docker.docker_compose_v2:
|
community.docker.docker_compose_v2:
|
||||||
project_src: /opt/stacks/caddy
|
project_src: /opt/stacks/caddy
|
||||||
|
|||||||
@@ -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
|
|
||||||
@@ -1,10 +1,6 @@
|
|||||||
---
|
---
|
||||||
# Monitoring services - System monitoring, alerts, and dashboards
|
# Monitoring services - System monitoring, alerts, and dashboards
|
||||||
|
|
||||||
- name: Install glance
|
|
||||||
import_tasks: glance.yml
|
|
||||||
tags: glance
|
|
||||||
|
|
||||||
- name: Install changedetection
|
- name: Install changedetection
|
||||||
import_tasks: changedetection.yml
|
import_tasks: changedetection.yml
|
||||||
tags: changedetection
|
tags: changedetection
|
||||||
|
|||||||
@@ -62,10 +62,6 @@ models.thesatelliteoflove.com {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
home.thesatelliteoflove.com {
|
|
||||||
reverse_proxy authentik-server-1:9000
|
|
||||||
}
|
|
||||||
|
|
||||||
gotify.thesatelliteoflove.com {
|
gotify.thesatelliteoflove.com {
|
||||||
reverse_proxy gotify:80
|
reverse_proxy gotify:80
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,11 +15,6 @@ services:
|
|||||||
extra_hosts:
|
extra_hosts:
|
||||||
- "{{ subdomains.gotify }}:{{ docker.hairpin_ip }}"
|
- "{{ subdomains.gotify }}:{{ docker.hairpin_ip }}"
|
||||||
labels:
|
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
|
mag37.dockcheck.update: true
|
||||||
volumes:
|
volumes:
|
||||||
config:
|
config:
|
||||||
|
|||||||
@@ -13,10 +13,6 @@ services:
|
|||||||
extra_hosts:
|
extra_hosts:
|
||||||
- '{{ subdomains.auth }}:{{ docker.hairpin_ip }}'
|
- '{{ subdomains.auth }}:{{ docker.hairpin_ip }}'
|
||||||
labels:
|
labels:
|
||||||
glance.name: Audiobookshelf
|
|
||||||
glance.icon: si:audiobookshelf
|
|
||||||
glance.url: https://{{ subdomains.audio }}/
|
|
||||||
glance.description: Audio book server
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
volumes:
|
volumes:
|
||||||
audiobooks:
|
audiobooks:
|
||||||
|
|||||||
@@ -18,9 +18,6 @@ services:
|
|||||||
POSTGRES_DB: ${PG_DB:-authentik}
|
POSTGRES_DB: ${PG_DB:-authentik}
|
||||||
env_file:
|
env_file:
|
||||||
- .env
|
- .env
|
||||||
labels:
|
|
||||||
glance.parent: authentik
|
|
||||||
glance.name: DB
|
|
||||||
trout:
|
trout:
|
||||||
image: docker.io/library/redis:alpine
|
image: docker.io/library/redis:alpine
|
||||||
command: --save 60 1 --loglevel warning
|
command: --save 60 1 --loglevel warning
|
||||||
@@ -33,9 +30,6 @@ services:
|
|||||||
timeout: 3s
|
timeout: 3s
|
||||||
volumes:
|
volumes:
|
||||||
- trout:/data
|
- trout:/data
|
||||||
labels:
|
|
||||||
glance.parent: authentik
|
|
||||||
glance.name: Redis
|
|
||||||
server:
|
server:
|
||||||
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.2.2}
|
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.2.2}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@@ -54,12 +48,6 @@ services:
|
|||||||
depends_on:
|
depends_on:
|
||||||
- postgresql
|
- postgresql
|
||||||
- trout
|
- trout
|
||||||
labels:
|
|
||||||
glance.name: Authentik
|
|
||||||
glance.icon: si:authentik
|
|
||||||
glance.url: https://{{ subdomains.auth }}/
|
|
||||||
glance.description: Authentication server
|
|
||||||
glance.id: authentik
|
|
||||||
worker:
|
worker:
|
||||||
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.2.2}
|
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2026.2.2}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
@@ -87,9 +75,6 @@ services:
|
|||||||
depends_on:
|
depends_on:
|
||||||
- postgresql
|
- postgresql
|
||||||
- trout
|
- trout
|
||||||
labels:
|
|
||||||
glance.parent: authentik
|
|
||||||
glance.name: Worker
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
database:
|
database:
|
||||||
|
|||||||
@@ -6,10 +6,6 @@ services:
|
|||||||
- config:/var/www/baikal/config
|
- config:/var/www/baikal/config
|
||||||
- data:/var/www/baikal/Specific
|
- data:/var/www/baikal/Specific
|
||||||
labels:
|
labels:
|
||||||
glance.name: Baikal
|
|
||||||
glance.icon: si:protoncalendar
|
|
||||||
glance.url: https://{{ subdomains.cal }}/
|
|
||||||
glance.description: CalDav server
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
volumes:
|
volumes:
|
||||||
config:
|
config:
|
||||||
|
|||||||
@@ -21,11 +21,6 @@ services:
|
|||||||
extra_hosts:
|
extra_hosts:
|
||||||
- "{{ subdomains.pocketid }}:{{ docker.hairpin_ip }}"
|
- "{{ subdomains.pocketid }}:{{ docker.hairpin_ip }}"
|
||||||
labels:
|
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
|
mag37.dockcheck.update: true
|
||||||
volumes:
|
volumes:
|
||||||
bytestash_data:
|
bytestash_data:
|
||||||
|
|||||||
@@ -12,10 +12,6 @@ services:
|
|||||||
- caddy_data:/data
|
- caddy_data:/data
|
||||||
- caddy_config:/config
|
- caddy_config:/config
|
||||||
labels:
|
labels:
|
||||||
glance.name: Caddy
|
|
||||||
glance.icon: si:caddy
|
|
||||||
glance.url: https://{{ primary_domain }}/
|
|
||||||
glance.description: Reverse proxy
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
networks:
|
networks:
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -14,10 +14,6 @@ services:
|
|||||||
- books:/books
|
- books:/books
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
glance.name: Calibre
|
|
||||||
glance.icon: si:calibreweb
|
|
||||||
glance.url: https://{{ subdomains.books }}/
|
|
||||||
glance.description: Book server
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
volumes:
|
volumes:
|
||||||
config:
|
config:
|
||||||
|
|||||||
@@ -5,11 +5,6 @@ services:
|
|||||||
container_name: changedetection
|
container_name: changedetection
|
||||||
hostname: changedetection
|
hostname: changedetection
|
||||||
labels:
|
labels:
|
||||||
glance.name: Changedetection
|
|
||||||
glance.icon: si:watchtower
|
|
||||||
glance.url: https://{{ subdomains.watcher }}/
|
|
||||||
glance.description: Changedetection
|
|
||||||
glance.id: changedetection
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
volumes:
|
volumes:
|
||||||
- changedetection-data:/datastore
|
- changedetection-data:/datastore
|
||||||
@@ -95,8 +90,6 @@ services:
|
|||||||
sockpuppetbrowser:
|
sockpuppetbrowser:
|
||||||
hostname: sockpuppetbrowser
|
hostname: sockpuppetbrowser
|
||||||
labels:
|
labels:
|
||||||
glance.parent: changedetection
|
|
||||||
glance.name: Browser
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
image: dgtlmoon/sockpuppetbrowser:latest
|
image: dgtlmoon/sockpuppetbrowser:latest
|
||||||
cap_add:
|
cap_add:
|
||||||
|
|||||||
@@ -19,12 +19,6 @@ services:
|
|||||||
- /opt/stacks/cronmaster/data:/app/data
|
- /opt/stacks/cronmaster/data:/app/data
|
||||||
- /opt/stacks/cronmaster/snippets:/app/snippets
|
- /opt/stacks/cronmaster/snippets:/app/snippets
|
||||||
labels:
|
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
|
mag37.dockcheck.update: true
|
||||||
networks:
|
networks:
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -2,9 +2,6 @@ services:
|
|||||||
dawarich_redis:
|
dawarich_redis:
|
||||||
image: redis:7.4-alpine
|
image: redis:7.4-alpine
|
||||||
container_name: dawarich_redis
|
container_name: dawarich_redis
|
||||||
labels:
|
|
||||||
glance.parent: dawarich
|
|
||||||
glance.name: Redis
|
|
||||||
volumes:
|
volumes:
|
||||||
- dawarich_redis_data:/data
|
- dawarich_redis_data:/data
|
||||||
restart: always
|
restart: always
|
||||||
@@ -17,9 +14,6 @@ services:
|
|||||||
dawarich_db:
|
dawarich_db:
|
||||||
image: postgis/postgis:17-3.5-alpine
|
image: postgis/postgis:17-3.5-alpine
|
||||||
shm_size: 1G
|
shm_size: 1G
|
||||||
labels:
|
|
||||||
glance.parent: dawarich
|
|
||||||
glance.name: DB
|
|
||||||
container_name: dawarich_db
|
container_name: dawarich_db
|
||||||
volumes:
|
volumes:
|
||||||
- dawarich_db_data:/var/lib/postgresql/data
|
- dawarich_db_data:/var/lib/postgresql/data
|
||||||
@@ -38,12 +32,6 @@ services:
|
|||||||
dawarich_app:
|
dawarich_app:
|
||||||
image: freikin/dawarich:latest
|
image: freikin/dawarich:latest
|
||||||
container_name: dawarich_app
|
container_name: dawarich_app
|
||||||
labels:
|
|
||||||
glance.name: Dawarich
|
|
||||||
glance.icon: si:openstreetmap
|
|
||||||
glance.url: https://{{ subdomains.loclog }}/
|
|
||||||
glance.description: Dawarich
|
|
||||||
glance.id: dawarich
|
|
||||||
volumes:
|
volumes:
|
||||||
- dawarich_public:/var/app/public
|
- dawarich_public:/var/app/public
|
||||||
- dawarich_watched:/var/app/tmp/imports/watched
|
- dawarich_watched:/var/app/tmp/imports/watched
|
||||||
@@ -100,9 +88,6 @@ services:
|
|||||||
dawarich_sidekiq:
|
dawarich_sidekiq:
|
||||||
image: freikin/dawarich:latest
|
image: freikin/dawarich:latest
|
||||||
container_name: dawarich_sidekiq
|
container_name: dawarich_sidekiq
|
||||||
labels:
|
|
||||||
glance.parent: dawarich
|
|
||||||
glance.name: Sidekiq
|
|
||||||
volumes:
|
volumes:
|
||||||
- dawarich_public:/var/app/public
|
- dawarich_public:/var/app/public
|
||||||
- dawarich_watched:/var/app/tmp/imports/watched
|
- dawarich_watched:/var/app/tmp/imports/watched
|
||||||
|
|||||||
@@ -16,10 +16,6 @@ services:
|
|||||||
- -url=https://{{ subdomains.dir2opds }}
|
- -url=https://{{ subdomains.dir2opds }}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
glance.name: dir2opds
|
|
||||||
glance.icon: si:book
|
|
||||||
glance.url: https://{{ subdomains.dir2opds }}/
|
|
||||||
glance.description: OPDS book catalog
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
networks:
|
networks:
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -2,11 +2,6 @@ services:
|
|||||||
dockge:
|
dockge:
|
||||||
image: louislam/dockge:1
|
image: louislam/dockge:1
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
|
||||||
glance.name: Dockge
|
|
||||||
glance.icon: si:docker
|
|
||||||
glance.url: http://{{ network.tailscale_hostname }}:5001
|
|
||||||
glance.description: Docker management
|
|
||||||
ports:
|
ports:
|
||||||
# Host Port : Container Port
|
# Host Port : Container Port
|
||||||
- 5001:5001
|
- 5001:5001
|
||||||
|
|||||||
@@ -15,11 +15,6 @@ services:
|
|||||||
- GITEA__mailer__PASSWD={{ vault_smtp.password }}
|
- GITEA__mailer__PASSWD={{ vault_smtp.password }}
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
glance.name: Gitea
|
|
||||||
glance.icon: si:gitea
|
|
||||||
glance.url: https://{{ subdomains.git }}/
|
|
||||||
glance.description: Code repo
|
|
||||||
glance.id: gitea
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
volumes:
|
volumes:
|
||||||
- gitea:/data
|
- gitea:/data
|
||||||
@@ -50,8 +45,6 @@ services:
|
|||||||
- '{{ subdomains.auth }}:{{ docker.hairpin_ip }}'
|
- '{{ subdomains.auth }}:{{ docker.hairpin_ip }}'
|
||||||
- '{{ subdomains.git }}:{{ docker.hairpin_ip }}'
|
- '{{ subdomains.git }}:{{ docker.hairpin_ip }}'
|
||||||
labels:
|
labels:
|
||||||
glance.parent: gitea
|
|
||||||
glance.name: Worker
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
volumes:
|
volumes:
|
||||||
- ./runner-config.yaml:/config.yaml
|
- ./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 }}
|
|
||||||
@@ -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_data:/app/data
|
||||||
- gokapi_config:/app/config
|
- gokapi_config:/app/config
|
||||||
labels:
|
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
|
mag37.dockcheck.update: true
|
||||||
volumes:
|
volumes:
|
||||||
gokapi_data:
|
gokapi_data:
|
||||||
|
|||||||
@@ -9,10 +9,6 @@ services:
|
|||||||
- GOTIFY_DEFAULTUSER_PASS={{ vault_gotify.admin_password }}
|
- GOTIFY_DEFAULTUSER_PASS={{ vault_gotify.admin_password }}
|
||||||
- TZ=America/Denver
|
- TZ=America/Denver
|
||||||
labels:
|
labels:
|
||||||
glance.name: Gotify
|
|
||||||
glance.icon: si:gotify
|
|
||||||
glance.url: "https://{{ subdomains.gotify }}/"
|
|
||||||
glance.description: Push notification server
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
extra_hosts:
|
extra_hosts:
|
||||||
- "{{ subdomains.auth }}:{{ docker.hairpin_ip }}"
|
- "{{ subdomains.auth }}:{{ docker.hairpin_ip }}"
|
||||||
@@ -29,10 +25,6 @@ services:
|
|||||||
depends_on:
|
depends_on:
|
||||||
- gotify
|
- gotify
|
||||||
labels:
|
labels:
|
||||||
glance.name: iGotify Assistant
|
|
||||||
glance.icon: si:apple
|
|
||||||
glance.url: "https://{{ subdomains.gotify_assistant }}/"
|
|
||||||
glance.description: iOS notification assistant
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
extra_hosts:
|
extra_hosts:
|
||||||
- "{{ subdomains.auth }}:{{ docker.hairpin_ip }}"
|
- "{{ subdomains.auth }}:{{ docker.hairpin_ip }}"
|
||||||
|
|||||||
@@ -32,18 +32,11 @@ services:
|
|||||||
restart: "always"
|
restart: "always"
|
||||||
labels:
|
labels:
|
||||||
docker-volume-backup.stop-during-backup: true
|
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:
|
backup:
|
||||||
image: offen/docker-volume-backup:v2
|
image: offen/docker-volume-backup:v2
|
||||||
restart: always
|
restart: always
|
||||||
labels:
|
labels:
|
||||||
glance.parent: gotosocial
|
|
||||||
glance.name: Backup
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
environment:
|
environment:
|
||||||
BACKUP_FILENAME: gts-backup-%Y-%m-%dT%H-%M-%S.tar.gz
|
BACKUP_FILENAME: gts-backup-%Y-%m-%dT%H-%M-%S.tar.gz
|
||||||
|
|||||||
@@ -8,12 +8,6 @@ services:
|
|||||||
depends_on:
|
depends_on:
|
||||||
- mongo
|
- mongo
|
||||||
- keydb
|
- keydb
|
||||||
labels:
|
|
||||||
glance.name: Heyform
|
|
||||||
glance.icon: si:googleforms
|
|
||||||
glance.url: https://{{ subdomains.heyform }}/
|
|
||||||
glance.description: Forms server
|
|
||||||
glance.id: heyform
|
|
||||||
environment:
|
environment:
|
||||||
- APP_HOMEPAGE_URL=http://{{ subdomains.heyform }}
|
- APP_HOMEPAGE_URL=http://{{ subdomains.heyform }}
|
||||||
- SESSION_KEY={{ vault_heyform.session_key }}
|
- SESSION_KEY={{ vault_heyform.session_key }}
|
||||||
@@ -31,9 +25,6 @@ services:
|
|||||||
mongo:
|
mongo:
|
||||||
image: percona/percona-server-mongodb:4.4
|
image: percona/percona-server-mongodb:4.4
|
||||||
restart: always
|
restart: always
|
||||||
labels:
|
|
||||||
glance.parent: heyform
|
|
||||||
glance.name: MongoDB
|
|
||||||
volumes:
|
volumes:
|
||||||
# Persist MongoDB data
|
# Persist MongoDB data
|
||||||
- database:/data/db
|
- database:/data/db
|
||||||
@@ -42,9 +33,6 @@ services:
|
|||||||
image: eqalpha/keydb:latest
|
image: eqalpha/keydb:latest
|
||||||
restart: always
|
restart: always
|
||||||
command: keydb-server --appendonly yes
|
command: keydb-server --appendonly yes
|
||||||
labels:
|
|
||||||
glance.parent: heyform
|
|
||||||
glance.name: KeyDB
|
|
||||||
volumes:
|
volumes:
|
||||||
# Persist KeyDB data
|
# Persist KeyDB data
|
||||||
- keydb:/data
|
- keydb:/data
|
||||||
|
|||||||
@@ -15,18 +15,11 @@ services:
|
|||||||
DATA_DIR: /data
|
DATA_DIR: /data
|
||||||
BROWSER_WEB_URL: http://chrome:9222
|
BROWSER_WEB_URL: http://chrome:9222
|
||||||
labels:
|
labels:
|
||||||
glance.name: Karakeep
|
|
||||||
glance.icon: si:wikibooks
|
|
||||||
glance.url: https://{{ subdomains.bookmarks }}/
|
|
||||||
glance.description: Bookmark manager
|
|
||||||
glance.id: karakeep
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
chrome:
|
chrome:
|
||||||
image: gcr.io/zenika-hub/alpine-chrome:123
|
image: gcr.io/zenika-hub/alpine-chrome:123
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
glance.name: Chrome
|
|
||||||
glance.parent: karakeep
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
command:
|
command:
|
||||||
- --no-sandbox
|
- --no-sandbox
|
||||||
@@ -39,8 +32,6 @@ services:
|
|||||||
image: getmeili/meilisearch:v1.13.3
|
image: getmeili/meilisearch:v1.13.3
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
glance.name: Meilisearch
|
|
||||||
glance.parent: karakeep
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
env_file:
|
env_file:
|
||||||
- .env
|
- .env
|
||||||
|
|||||||
@@ -14,10 +14,6 @@ services:
|
|||||||
- "{{ subdomains.pocketid }}:{{ docker.hairpin_ip }}"
|
- "{{ subdomains.pocketid }}:{{ docker.hairpin_ip }}"
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
glance.name: Kavita
|
|
||||||
glance.icon: si:book
|
|
||||||
glance.url: https://{{ subdomains.kavita }}/
|
|
||||||
glance.description: Book server
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
networks:
|
networks:
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -11,10 +11,6 @@ services:
|
|||||||
- ./data/redis:/var/lib/redis
|
- ./data/redis:/var/lib/redis
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
labels:
|
||||||
glance.name: KOReader Sync
|
|
||||||
glance.icon: si:book
|
|
||||||
glance.url: https://{{ subdomains.kosync }}/
|
|
||||||
glance.description: KOReader reading progress sync
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
networks:
|
networks:
|
||||||
default:
|
default:
|
||||||
|
|||||||
@@ -23,11 +23,6 @@ services:
|
|||||||
LISTMONK_ADMIN_PASSWORD: {{ vault_listmonk.admin_password }}
|
LISTMONK_ADMIN_PASSWORD: {{ vault_listmonk.admin_password }}
|
||||||
volumes:
|
volumes:
|
||||||
- uploads:/listmonk/uploads
|
- uploads:/listmonk/uploads
|
||||||
labels:
|
|
||||||
glance.name: Listmonk
|
|
||||||
glance.url: https://{{ subdomains.listmonk }}/
|
|
||||||
glance.description: Mailing list manager
|
|
||||||
glance.id: listmonk
|
|
||||||
|
|
||||||
db:
|
db:
|
||||||
image: postgres:17-alpine
|
image: postgres:17-alpine
|
||||||
@@ -44,9 +39,6 @@ services:
|
|||||||
retries: 6
|
retries: 6
|
||||||
volumes:
|
volumes:
|
||||||
- listmonk-data:/var/lib/postgresql/data
|
- listmonk-data:/var/lib/postgresql/data
|
||||||
labels:
|
|
||||||
glance.parent: listmonk
|
|
||||||
glance.name: DB
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
uploads:
|
uploads:
|
||||||
|
|||||||
@@ -26,10 +26,6 @@ services:
|
|||||||
extra_hosts:
|
extra_hosts:
|
||||||
- "{{ subdomains.pocketid }}:{{ docker.hairpin_ip }}"
|
- "{{ subdomains.pocketid }}:{{ docker.hairpin_ip }}"
|
||||||
labels:
|
labels:
|
||||||
glance.name: Manyfold
|
|
||||||
glance.icon: si:open3d
|
|
||||||
glance.url: https://{{ subdomains.models }}/
|
|
||||||
glance.description: STL Storage
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
# Optional, but recommended for better security
|
# Optional, but recommended for better security
|
||||||
|
|||||||
@@ -4,11 +4,6 @@ services:
|
|||||||
container_name: obsidian-livesync
|
container_name: obsidian-livesync
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
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
|
mag37.dockcheck.update: true
|
||||||
environment:
|
environment:
|
||||||
- SERVER_DOMAIN={{ network.docker_host_ip }}
|
- SERVER_DOMAIN={{ network.docker_host_ip }}
|
||||||
|
|||||||
@@ -2,9 +2,6 @@ services:
|
|||||||
broker:
|
broker:
|
||||||
image: docker.io/library/redis:7
|
image: docker.io/library/redis:7
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
labels:
|
|
||||||
glance.parent: paperlessngx
|
|
||||||
glance.name: Redis
|
|
||||||
volumes:
|
volumes:
|
||||||
- redisdata:/data
|
- redisdata:/data
|
||||||
|
|
||||||
@@ -14,11 +11,6 @@ services:
|
|||||||
labels:
|
labels:
|
||||||
# Stop during backup so the SQLite database in the data volume is consistent
|
# Stop during backup so the SQLite database in the data volume is consistent
|
||||||
docker-volume-backup.stop-during-backup: true
|
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:
|
depends_on:
|
||||||
- broker
|
- broker
|
||||||
- gotenberg
|
- gotenberg
|
||||||
@@ -40,9 +32,6 @@ services:
|
|||||||
|
|
||||||
gotenberg:
|
gotenberg:
|
||||||
image: docker.io/gotenberg/gotenberg:8.7
|
image: docker.io/gotenberg/gotenberg:8.7
|
||||||
labels:
|
|
||||||
glance.parent: paperlessngx
|
|
||||||
glance.name: Gotenburg
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
# The gotenberg chromium route is used to convert .eml files. We do not
|
# The gotenberg chromium route is used to convert .eml files. We do not
|
||||||
@@ -54,17 +43,12 @@ services:
|
|||||||
|
|
||||||
tika:
|
tika:
|
||||||
image: docker.io/apache/tika:latest
|
image: docker.io/apache/tika:latest
|
||||||
labels:
|
|
||||||
glance.parent: paperlessngx
|
|
||||||
glance.name: Tika
|
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
backup:
|
backup:
|
||||||
image: offen/docker-volume-backup:v2
|
image: offen/docker-volume-backup:v2
|
||||||
restart: always
|
restart: always
|
||||||
labels:
|
labels:
|
||||||
glance.parent: paperlessngx
|
|
||||||
glance.name: Backup
|
|
||||||
mag37.dockcheck.update: true
|
mag37.dockcheck.update: true
|
||||||
environment:
|
environment:
|
||||||
BACKUP_FILENAME: pngx-backup-%Y-%m-%dT%H-%M-%S.tar.gz
|
BACKUP_FILENAME: pngx-backup-%Y-%m-%dT%H-%M-%S.tar.gz
|
||||||
|
|||||||
@@ -13,11 +13,6 @@ services:
|
|||||||
retries: 2
|
retries: 2
|
||||||
start_period: 10s
|
start_period: 10s
|
||||||
labels:
|
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
|
mag37.dockcheck.update: true
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
@@ -4,11 +4,6 @@ services:
|
|||||||
container_name: syncthing
|
container_name: syncthing
|
||||||
hostname: my-syncthing
|
hostname: my-syncthing
|
||||||
labels:
|
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
|
mag37.dockcheck.update: true
|
||||||
environment:
|
environment:
|
||||||
- PUID=1000
|
- PUID=1000
|
||||||
|
|||||||
@@ -13,7 +13,7 @@
|
|||||||
├── media/ (audiobookshelf, calibre, ghost, pinchflat, pinry, hoarder, manyfold)
|
├── media/ (audiobookshelf, calibre, ghost, pinchflat, pinry, hoarder, manyfold)
|
||||||
├── productivity/ (paperless, baikal, syncthing, mmdl, heyform, dawarich, palmr, obsidian-livesync)
|
├── productivity/ (paperless, baikal, syncthing, mmdl, heyform, dawarich, palmr, obsidian-livesync)
|
||||||
├── communication/ (gotosocial, postiz)
|
├── communication/ (gotosocial, postiz)
|
||||||
└── monitoring/ (glance, changedetection, appriseapi, gotify)
|
└── monitoring/ (changedetection, appriseapi, gotify)
|
||||||
```
|
```
|
||||||
- **COMPLETED**: All services organized into logical categories with category-level tags
|
- **COMPLETED**: All services organized into logical categories with category-level tags
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user