stuff
All checks were successful
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 1m22s

This commit is contained in:
geezo 2025-05-09 20:15:07 -04:00
parent 7c1e1aa48e
commit fcdd8ec832
27 changed files with 215 additions and 114 deletions

55
Caddyfile Normal file
View File

@ -0,0 +1,55 @@
# Global options
{
admin off
auto_https off
}
# Jellyfin - Media Server
jellyfin.localhost {
reverse_proxy localhost:2000
}
# qBittorrent - Torrent Client
qbittorrent.localhost {
reverse_proxy localhost:2001
}
# SABnzbd - Usenet Client
sabnzbd.localhost {
reverse_proxy localhost:2002
}
# Sonarr - TV Show Management
sonarr.localhost {
reverse_proxy localhost:2003
}
# Radarr - Movie Management
radarr.localhost {
reverse_proxy localhost:2004
}
# Lidarr - Music Management
lidarr.localhost {
reverse_proxy localhost:2006
}
# Readarr - Book Management
readarr.localhost {
reverse_proxy localhost:2007
}
# Bazarr - Subtitle Management
bazarr.localhost {
reverse_proxy localhost:2008
}
# Prowlarr - Indexer Management
prowlarr.localhost {
reverse_proxy localhost:2009
}
# Gluetun Admin Interface
gluetun.localhost {
reverse_proxy localhost:8003
}

View File

@ -1,16 +1,13 @@
version: version: '3.2'
workflow_dispatch: '3.2'
services: services:
changedetection: changedetection:
workflow_dispatch:
image: ghcr.io/dgtlmoon/changedetection.io image: ghcr.io/dgtlmoon/changedetection.io
container_name: changedetection container_name: changedetection
hostname: changedetection hostname: changedetection
volumes: volumes:
- changedetection_data:/datastore - changedetection_data:/datastore
# Configurable proxy list support, see https://github.com/dgtlmoon/changedetection.io/wiki/Proxy-configuration#proxy-list-support # Configurable proxy list support, see https://github.com/dgtlmoon/changedetection.io/wiki/Proxy-configuration#proxy-list-support
# - ./proxies.json: # - ./proxies.json:/datastore/proxies.json
workflow_dispatch:/datastore/proxies.json
# environment: # environment:
# Default listening port, can also be changed with the -p option # Default listening port, can also be changed with the -p option
@ -80,10 +77,8 @@ services:
# If WEBDRIVER or PLAYWRIGHT are enabled, changedetection container depends on that # If WEBDRIVER or PLAYWRIGHT are enabled, changedetection container depends on that
# and must wait before starting (substitute "browser-chrome" with "playwright-chrome" if last one is used) # and must wait before starting (substitute "browser-chrome" with "playwright-chrome" if last one is used)
# depends_on: # depends_on:
workflow_dispatch:
# sockpuppetbrowser: # sockpuppetbrowser:
# condition: # condition: service_started
workflow_dispatch: service_started
# Sockpuppetbrowser is basically chrome wrapped in an API for allowing fast fetching of web-pages. # Sockpuppetbrowser is basically chrome wrapped in an API for allowing fast fetching of web-pages.

View File

@ -9,11 +9,9 @@ services:
- "1006:7777" - "1006:7777"
labels: labels:
glance.name: Hastebin glance.name: Hastebin
glance.icon: glance.icon: si:jellyfin
workflow_dispatch: si:jellyfin
glance.url: https://hastebin.theocorp glance.url: https://hastebin.theocorp
glance.description: glance.description: Private Note Bin
workflow_dispatch: Private Note Bin
glance.hide: false glance.hide: false
hastebinredis: hastebinredis:
container_name: hastebinredis container_name: hastebinredis

View File

@ -20,11 +20,9 @@ services:
- default - default
labels: labels:
glance.name: Navidrome glance.name: Navidrome
glance.icon: glance.icon: si:applemusic
workflow_dispatch: si:applemusic
glance.url: https://navidrome.geezo.io glance.url: https://navidrome.geezo.io
glance.description: glance.description: Music Server
workflow_dispatch: Music Server
glance.hide: false glance.hide: false
volumes: volumes:

View File

@ -51,7 +51,6 @@ services:
restart: unless-stopped restart: unless-stopped
user: 1000:1000 user: 1000:1000
depends_on: depends_on:
workflow_dispatch:
- db - db
- broker - broker
ports: ports:
@ -68,11 +67,9 @@ services:
PAPERLESS_URL: https://paperless.theocorp PAPERLESS_URL: https://paperless.theocorp
labels: labels:
glance.name: Paperless glance.name: Paperless
glance.icon: glance.icon: si:paperlessngx
workflow_dispatch: si:paperlessngx
glance.url: https://paperless.theocorp glance.url: https://paperless.theocorp
glance.description: glance.description: Document Storage
workflow_dispatch: Document Storage
glance.hide: false glance.hide: false
volumes: volumes:

View File

@ -52,13 +52,10 @@ services:
- "${COMPOSE_PORT_HTTP:-9000}:9000" - "${COMPOSE_PORT_HTTP:-9000}:9000"
- "${COMPOSE_PORT_HTTPS:-9443}:9443" - "${COMPOSE_PORT_HTTPS:-9443}:9443"
depends_on: depends_on:
workflow_dispatch:
postgresql: postgresql:
condition: condition: service_healthy
workflow_dispatch: service_healthy
redis: redis:
condition: condition: service_healthy
workflow_dispatch: service_healthy
worker: worker:
image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2025.2.1} image: ${AUTHENTIK_IMAGE:-ghcr.io/goauthentik/server}:${AUTHENTIK_TAG:-2025.2.1}
restart: unless-stopped restart: unless-stopped
@ -84,13 +81,10 @@ services:
env_file: env_file:
- .env - .env
depends_on: depends_on:
workflow_dispatch:
postgresql: postgresql:
condition: condition: service_healthy
workflow_dispatch: service_healthy
redis: redis:
condition: condition: service_healthy
workflow_dispatch: service_healthy
volumes: volumes:
database: database:

View File

@ -1,5 +1,4 @@
version: version: 2
workflow_dispatch: 2
backends: backends:
aws_s3: aws_s3:

View File

@ -1,5 +1,4 @@
version: version: 2
workflow_dispatch: 2
backends: backends:
albatross: albatross:

View File

@ -16,11 +16,9 @@ services:
image: daya0576/beaverhabits:latest image: daya0576/beaverhabits:latest
labels: labels:
glance.name: BeaverHabits glance.name: BeaverHabits
glance.icon: glance.icon: si:checkmarx
workflow_dispatch: si:checkmarx
glance.url: "https://habits.theocorp" glance.url: "https://habits.theocorp"
glance.description: glance.description: Habit Tacker
workflow_dispatch: Habit Tacker
glance.hide: false glance.hide: false
networks: networks:
- default - default

View File

@ -11,11 +11,9 @@ services:
- ./beszel_data:/beszel_data - ./beszel_data:/beszel_data
labels: labels:
glance.name: Beszel glance.name: Beszel
glance.icon: glance.icon: si:jellyfin
workflow_dispatch: si:jellyfin
glance.url: https://beszel.theocorp glance.url: https://beszel.theocorp
glance.description: glance.description: Server Monitoring
workflow_dispatch: Server Monitoring
glance.hide: false glance.hide: false

View File

@ -1,4 +1,3 @@
gitea.theocorp { gitea.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy gitea:3000 reverse_proxy gitea:3000
@ -73,3 +72,53 @@ habits.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy beaverhabits:8080 reverse_proxy beaverhabits:8080
} }
jellyfin.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:2000
}
qbittorrent.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:2001
}
sabnzbd.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:2002
}
sonarr.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:2003
}
radarr.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:2004
}
lidarr.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:2006
}
readarr.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:2007
}
bazarr.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:2008
}
prowlarr.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:2009
}
gluetun.theocorp {
tls /certs/theocorp+4.pem /certs/theocorp+4-key.pem
reverse_proxy localhost:8003
}

View File

@ -1,5 +1,4 @@
version: version: '3.8'
workflow_dispatch: '3.8'
services: services:
cup: cup:

View File

@ -8,11 +8,9 @@ services:
- 1015:8080 - 1015:8080
labels: labels:
glance.name: Dozzle glance.name: Dozzle
glance.icon: glance.icon: si:jellyfin
workflow_dispatch: si:jellyfin
glance.url: https://dozzle.theocorp glance.url: https://dozzle.theocorp
glance.description: glance.description: Container Logs
workflow_dispatch: Container Logs
glance.hide: false glance.hide: false
restart: unless-stopped restart: unless-stopped

View File

@ -1,5 +1,4 @@
version: version: "3"
workflow_dispatch: "3"
networks: networks:
gitea: gitea:
@ -28,7 +27,6 @@ services:
- "1001:3000" - "1001:3000"
- "222:22" - "222:22"
depends_on: depends_on:
workflow_dispatch:
- postgres - postgres
postgres: postgres:
image: postgres:14 image: postgres:14

View File

@ -54,8 +54,7 @@ pages:
widgets: widgets:
- type: calendar - type: calendar
- type: releases - type: releases
show-source-icon: show-source-icon: true
workflow_dispatch: true
repositories: repositories:
- hoarder-app/hoarder - hoarder-app/hoarder
- glanceapp/glance - glanceapp/glance

View File

@ -1,10 +1,8 @@
version: version: "3.8"
workflow_dispatch: "3.8"
services: services:
web: web:
container_name: hoarder container_name: hoarder
image: ghcr.io/hoarder-app/hoarder:${HOARDER_VERSIon: image: ghcr.io/hoarder-app/hoarder:${HOARDER_VERSIon:-release}
workflow_dispatch:-release}
restart: unless-stopped restart: unless-stopped
volumes: volumes:
- hoarder_data:/data - hoarder_data:/data
@ -21,11 +19,9 @@ services:
- default - default
labels: labels:
glance.name: Hoarder glance.name: Hoarder
glance.icon: glance.icon: si:jellyfin
workflow_dispatch: si:jellyfin
glance.url: https://hoarder.theocorp glance.url: https://hoarder.theocorp
glance.description: glance.description: Link saving
workflow_dispatch: Link saving
glance.hide: false glance.hide: false
chrome: chrome:
container_name: hoarder-chrome container_name: hoarder-chrome

View File

@ -11,8 +11,7 @@ name: immich
services: services:
immich-server: immich-server:
container_name: immich container_name: immich
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSIon: image: ghcr.io/immich-app/immich-server:${IMMICH_VERSIon:-release}
workflow_dispatch:-release}
# extends: # extends:
# file: hwaccel.transcoding.yml # file: hwaccel.transcoding.yml
# service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding # service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
@ -25,7 +24,6 @@ services:
ports: ports:
- '2283:2283' - '2283:2283'
depends_on: depends_on:
workflow_dispatch:
- redis - redis
- database - database
restart: always restart: always
@ -33,20 +31,16 @@ services:
disable: false disable: false
labels: labels:
glance.name: Immich glance.name: Immich
glance.icon: glance.icon: si:immich
workflow_dispatch: si:immich
glance.url: https://immich.theocorp glance.url: https://immich.theocorp
glance.description: glance.description: Picture Storage Cloud
workflow_dispatch: Picture Storage Cloud
glance.hide: false glance.hide: false
immich-machine-learning: immich-machine-learning:
container_name: immich-machine-learning container_name: immich-machine-learning
# For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag. # For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag.
# Example tag: ${IMMICH_VERSIon: # Example tag: ${IMMICH_VERSIon:-release}-cuda
workflow_dispatch:-release}-cuda image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSIon:-release}
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSIon:
workflow_dispatch:-release}
# extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
# file: hwaccel.ml.yml # file: hwaccel.ml.yml
# service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable # service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable

View File

@ -1,5 +1,4 @@
version: version: '3.8'
workflow_dispatch: '3.8'
volumes: volumes:
db_data: db_data:
@ -46,7 +45,5 @@ services:
volumes: volumes:
- n8n_data:/home/node/.n8n - n8n_data:/home/node/.n8n
depends_on: depends_on:
workflow_dispatch:
postgres: postgres:
condition: condition: service_healthy
workflow_dispatch: service_healthy

View File

@ -1,5 +1,4 @@
version: version: '3.8'
workflow_dispatch: '3.8'
services: services:
netbird: netbird:

View File

@ -36,11 +36,9 @@ services:
- default - default
labels: labels:
glance.name: NextCloud glance.name: NextCloud
glance.icon: glance.icon: si:nextcloud
workflow_dispatch: si:nextcloud
glance.url: https://cloud.geezo.io glance.url: https://cloud.geezo.io
glance.description: glance.description: Private Cloud
workflow_dispatch: Private Cloud
glance.hide: false glance.hide: false
networks: networks:

View File

@ -1,10 +1,8 @@
actions: actions:
- title: backup containers - title: backup containers
shell: "docker run --rm -d --privileged -v /home/geezo/docker_containers/autorestic:/data -v /var/run/docker.sock:/var/run/docker.sock cupcakearmy/autorestic autorestic backup -va -c /data/config.yaml" shell: "docker run --rm -d --privileged -v /home/geezo/docker_containers/autorestic:/data -v /var/run/docker.sock:/var/run/docker.sock cupcakearmy/autorestic autorestic backup -va -c /data/config.yaml"
icon: icon: <iconify-icon icon="lets-icons:save-duotone" width="48" height="24"></iconify-icon>
workflow_dispatch: <iconify-icon icon="lets-icons:save-duotone" width="48" height="24"></iconify-icon>
execOnCron: execOnCron:
workflow_dispatch:
- "@daily" - "@daily"
- title: deploy all containers - title: deploy all containers
shell: | shell: |
@ -19,8 +17,7 @@ actions:
echo "Warning: No docker-compose file found in ${dir}" echo "Warning: No docker-compose file found in ${dir}"
fi fi
done < service_order.txt done < service_order.txt
icon: icon: <iconify-icon icon="mdi:docker" width="48" height="24"></iconify-icon>
workflow_dispatch: <iconify-icon icon="mdi:docker" width="48" height="24"></iconify-icon>
timeout: 60 timeout: 60

View File

@ -15,9 +15,7 @@ services:
command: apt-get install docker-compose-plugin command: apt-get install docker-compose-plugin
labels: labels:
glance.name: Olivetin glance.name: Olivetin
glance.icon: glance.icon: si:purescript
workflow_dispatch: si:purescript
glance.url: https://olivetin.theocorp glance.url: https://olivetin.theocorp
glance.description: glance.description: Canned Scripts UI
workflow_dispatch: Canned Scripts UI
glance.hide: false glance.hide: false

View File

@ -1,5 +1,4 @@
version: version: "3.8"
workflow_dispatch: "3.8"
services: services:
mysql: mysql:
@ -20,7 +19,6 @@ services:
image: ghcr.io/operational-co/operational.co:0.1.7 image: ghcr.io/operational-co/operational.co:0.1.7
container_name: operational-app container_name: operational-app
depends_on: depends_on:
workflow_dispatch:
- mysql - mysql
restart: always restart: always
ports: ports:

View File

@ -1,5 +1,4 @@
version: version: "3"
workflow_dispatch: "3"
services: services:
portainer: portainer:
container_name: portainer container_name: portainer
@ -12,11 +11,9 @@ services:
restart: unless-stopped restart: unless-stopped
labels: labels:
glance.name: Portainer glance.name: Portainer
glance.icon: glance.icon: si:portainer
workflow_dispatch: si:portainer
glance.url: https://portainer.theocorp glance.url: https://portainer.theocorp
glance.description: glance.description: Container Management UI
workflow_dispatch: Container Management UI
glance.hide: false glance.hide: false
volumes: volumes:
portainer_data: portainer_data:

View File

@ -1,5 +1,4 @@
version: version: '3'
workflow_dispatch: '3'
services: services:
tubearchivist: tubearchivist:
@ -21,8 +20,7 @@ services:
ELASTIC_PASSWORD: verysecret ELASTIC_PASSWORD: verysecret
TZ: America/New_York TZ: America/New_York
TA_PORT: 9000 TA_PORT: 9000
REDIS_Con: REDIS_Con: redis://archivist-redis:6379
workflow_dispatch: redis://archivist-redis:6379
healthcheck: healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/health"] test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
interval: 2m interval: 2m
@ -30,7 +28,6 @@ services:
retries: 3 retries: 3
start_period: 30s start_period: 30s
depends_on: depends_on:
workflow_dispatch:
- archivist-es - archivist-es
- archivist-redis - archivist-redis
networks: networks:
@ -46,7 +43,6 @@ services:
volumes: volumes:
- redis:/data - redis:/data
depends_on: depends_on:
workflow_dispatch:
- archivist-es - archivist-es
archivist-es: archivist-es:

View File

@ -1,5 +1,4 @@
version: version: '3'
workflow_dispatch: '3'
services: services:
watchtower: watchtower:
container_name: watchtower container_name: watchtower

View File

@ -16,6 +16,12 @@ services:
# plex # plex
- 2000:8096 # plex - 2000:8096 # plex
restart: unless-stopped restart: unless-stopped
labels:
glance.name: Jellyfin
glance.icon: si:jellyfin
glance.url: https://jellyfin.theocorp
glance.description: Media Server
glance.hide: false
# qBitorrent is used to download torrents # qBitorrent is used to download torrents
qbittorrent: qbittorrent:
image: lscr.io/linuxserver/qbittorrent image: lscr.io/linuxserver/qbittorrent
@ -33,10 +39,14 @@ services:
# - 8081:8081 # qbittorrent # - 8081:8081 # qbittorrent
network_mode: service:gluetun network_mode: service:gluetun
depends_on: depends_on:
workflow_dispatch:
gluetun: gluetun:
condition: condition: service_healthy
workflow_dispatch: service_healthy labels:
glance.name: qBittorrent
glance.icon: si:qbittorrent
glance.url: https://qbittorrent.theocorp
glance.description: Torrent Client
glance.hide: false
# SABnzbd is used to download from usenet # SABnzbd is used to download from usenet
sabnzbd: sabnzbd:
image: lscr.io/linuxserver/sabnzbd:latest image: lscr.io/linuxserver/sabnzbd:latest
@ -53,6 +63,12 @@ services:
#- 8080:8080 # sabnzbd #- 8080:8080 # sabnzbd
restart: unless-stopped restart: unless-stopped
network_mode: service:gluetun network_mode: service:gluetun
labels:
glance.name: SABnzbd
glance.icon: si:sabnzbd
glance.url: https://sabnzbd.theocorp
glance.description: Usenet Client
glance.hide: false
# Sonarr is used to query, add downloads to the download queue and index TV shows # Sonarr is used to query, add downloads to the download queue and index TV shows
# https://sonarr.tv/ # https://sonarr.tv/
sonarr: sonarr:
@ -68,6 +84,12 @@ services:
ports: ports:
- 2003:8989 - 2003:8989
restart: unless-stopped restart: unless-stopped
labels:
glance.name: Sonarr
glance.icon: si:sonarr
glance.url: https://sonarr.theocorp
glance.description: TV Show Management
glance.hide: false
# Radarr is used to query, add downloads to the download queue and index Movies # Radarr is used to query, add downloads to the download queue and index Movies
# https://radarr.video/ # https://radarr.video/
radarr: radarr:
@ -83,6 +105,12 @@ services:
ports: ports:
- 2004:7878 - 2004:7878
restart: unless-stopped restart: unless-stopped
labels:
glance.name: Radarr
glance.icon: si:radarr
glance.url: https://radarr.theocorp
glance.description: Movie Management
glance.hide: false
# Lidarr is used to query, add downloads to the download queue and index Music # Lidarr is used to query, add downloads to the download queue and index Music
# https://lidarr.audio/ # https://lidarr.audio/
lidarr: lidarr:
@ -98,6 +126,12 @@ services:
ports: ports:
- 2006:8686 - 2006:8686
restart: unless-stopped restart: unless-stopped
labels:
glance.name: Lidarr
glance.icon: si:lidarr
glance.url: https://lidarr.theocorp
glance.description: Music Management
glance.hide: false
# Readarr is used to query, add downloads to the download queue and index Audio and Ebooks # Readarr is used to query, add downloads to the download queue and index Audio and Ebooks
# https://readarr.com/ # https://readarr.com/
readarr: readarr:
@ -113,6 +147,12 @@ services:
ports: ports:
- 2007:8787 - 2007:8787
restart: unless-stopped restart: unless-stopped
labels:
glance.name: Readarr
glance.icon: si:readarr
glance.url: https://readarr.theocorp
glance.description: Book Management
glance.hide: false
# Bazarr is used to download and categorize subtitles # Bazarr is used to download and categorize subtitles
# https://www.bazarr.media/ # https://www.bazarr.media/
bazarr: bazarr:
@ -128,6 +168,12 @@ services:
ports: ports:
- 2008:6767 - 2008:6767
restart: unless-stopped restart: unless-stopped
labels:
glance.name: Bazarr
glance.icon: si:bazarr
glance.url: https://bazarr.theocorp
glance.description: Subtitle Management
glance.hide: false
# Prowlarr is our torrent indexer/searcher. Sonarr/Radarr use Prowlarr as a source # Prowlarr is our torrent indexer/searcher. Sonarr/Radarr use Prowlarr as a source
# https://prowlarr.com/ # https://prowlarr.com/
prowlarr: prowlarr:
@ -142,6 +188,12 @@ services:
ports: ports:
- 2009:9696 - 2009:9696
restart: unless-stopped restart: unless-stopped
labels:
glance.name: Prowlarr
glance.icon: si:prowlarr
glance.url: https://prowlarr.theocorp
glance.description: Indexer Management
glance.hide: false
# Gluetun is our VPN, so you can download torrents safely # Gluetun is our VPN, so you can download torrents safely
gluetun: gluetun:
image: qmcgaw/gluetun:v3 image: qmcgaw/gluetun:v3
@ -168,6 +220,12 @@ services:
- VPN_PORT_FORWARDING=on - VPN_PORT_FORWARDING=on
restart: unless-stopped restart: unless-stopped
network_mode: bridge network_mode: bridge
labels:
glance.name: Gluetun
glance.icon: si:gluetun
glance.url: https://gluetun.theocorp
glance.description: VPN Client
glance.hide: false
# Watchtower is going to keep our instances updated # Watchtower is going to keep our instances updated
# watchtower: # watchtower:
# image: containrrr/watchtower # image: containrrr/watchtower