Compare commits

..

No commits in common. "2ddaea59540c6b0966b21386b805e4259714f34b" and "b299591d3681b55f23b09be6a6c4fd0d371f4d36" have entirely different histories.

26 changed files with 51 additions and 358 deletions

10
.gitignore vendored
View File

@ -3,12 +3,4 @@ data/
immich/library immich/library
immich/postgres immich/postgres
yams/config yams/config
.export/ .export/
beszel_data/
## beaverhabits
.nicegui/
gaxinto@theodorio.com.json
habits.db
certificates/

View File

@ -1,117 +0,0 @@
version: '3.2'
services:
changedetection:
image: ghcr.io/dgtlmoon/changedetection.io
container_name: changedetection
hostname: changedetection
volumes:
- changedetection_data:/datastore
# Configurable proxy list support, see https://github.com/dgtlmoon/changedetection.io/wiki/Proxy-configuration#proxy-list-support
# - ./proxies.json:/datastore/proxies.json
# environment:
# Default listening port, can also be changed with the -p option
# - PORT=5000
#
# Log levels are in descending order. (TRACE is the most detailed one)
# Log output levels: TRACE, DEBUG(default), INFO, SUCCESS, WARNING, ERROR, CRITICAL
# - LOGGER_LEVEL=TRACE
#
# Alternative WebDriver/selenium URL, do not use "'s or 's!
# - WEBDRIVER_URL=http://browser-chrome:4444/wd/hub
#
# WebDriver proxy settings webdriver_proxyType, webdriver_ftpProxy, webdriver_noProxy,
# webdriver_proxyAutoconfigUrl, webdriver_autodetect,
# webdriver_socksProxy, webdriver_socksUsername, webdriver_socksVersion, webdriver_socksPassword
#
# https://selenium-python.readthedocs.io/api.html#module-selenium.webdriver.common.proxy
#
# Alternative target "Chrome" Playwright URL, do not use "'s or 's!
# "Playwright" is a driver/librarythat allows changedetection to talk to a Chrome or similar browser.
# - PLAYWRIGHT_DRIVER_URL=ws://sockpuppetbrowser:3000
#
# Playwright proxy settings playwright_proxy_server, playwright_proxy_bypass, playwright_proxy_username, playwright_proxy_password
#
# https://playwright.dev/python/docs/api/class-browsertype#browser-type-launch-option-proxy
#
# Plain requests - proxy support example.
# - HTTP_PROXY=socks5h://10.10.1.10:1080
# - HTTPS_PROXY=socks5h://10.10.1.10:1080
#
# An exclude list (useful for notification URLs above) can be specified by with
# - NO_PROXY="localhost,192.168.0.0/24"
#
# Base URL of your changedetection.io install (Added to the notification alert)
# - BASE_URL=https://mysite.com
# Respect proxy_pass type settings, `proxy_set_header Host "localhost";` and `proxy_set_header X-Forwarded-Prefix /app;`
# More here https://github.com/dgtlmoon/changedetection.io/wiki/Running-changedetection.io-behind-a-reverse-proxy-sub-directory
# - USE_X_SETTINGS=1
#
# Hides the `Referer` header so that monitored websites can't see the changedetection.io hostname.
# - HIDE_REFERER=true
#
# Default number of parallel/concurrent fetchers
# - FETCH_WORKERS=10
#
# Absolute minimum seconds to recheck, overrides any watch minimum, change to 0 to disable
# - MINIMUM_SECONDS_RECHECK_TIME=3
#
# If you want to watch local files file:///path/to/file.txt (careful! security implications!)
# - ALLOW_FILE_URI=False
#
# For complete privacy if you don't want to use the 'check version' / telemetry service
# - DISABLE_VERSION_CHECK=true
#
# A valid timezone name to run as (for scheduling watch checking) see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
# - TZ=America/Los_Angeles
# Comment out ports: when using behind a reverse proxy , enable networks: etc.
ports:
- 1016:5000
restart: unless-stopped
# Used for fetching pages via WebDriver+Chrome where you need Javascript support.
# Now working on arm64 (needs testing on rPi - tested on Oracle ARM instance)
# replace image with seleniarm/standalone-chromium:4.0.0-20211213
# 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)
# depends_on:
# sockpuppetbrowser:
# condition: service_started
# Sockpuppetbrowser is basically chrome wrapped in an API for allowing fast fetching of web-pages.
# RECOMMENDED FOR FETCHING PAGES WITH CHROME
# sockpuppetbrowser:
# hostname: sockpuppetbrowser
# image: dgtlmoon/sockpuppetbrowser:latest
# cap_add:
# - SYS_ADMIN
## SYS_ADMIN might be too much, but it can be needed on your platform https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md#running-puppeteer-on-gitlabci
# restart: unless-stopped
# environment:
# - SCREEN_WIDTH=1920
# - SCREEN_HEIGHT=1024
# - SCREEN_DEPTH=16
# - MAX_CONCURRENT_CHROME_PROCESSES=10
# Used for fetching pages via Playwright+Chrome where you need Javascript support.
# Note: Works well but is deprecated, does not fetch full page screenshots (doesnt work with Visual Selector)
# Does not report status codes (200, 404, 403) and other issues
# browser-chrome:
# hostname: browser-chrome
# image: selenium/standalone-chrome:4
# environment:
# - VNC_NO_PASSWORD=1
# - SCREEN_WIDTH=1920
# - SCREEN_HEIGHT=1080
# - SCREEN_DEPTH=24
# volumes:
# # Workaround to avoid the browser crashing inside a docker container
# # See https://github.com/SeleniumHQ/docker-selenium#quick-start
# - /dev/shm:/dev/shm
# restart: unless-stopped
volumes:
changedetection_data:

View File

@ -75,3 +75,9 @@ locations:
type: volume type: volume
to: to:
- aws_s3 - aws_s3
pinchflat_pinchflat_data:
from: pinchflat_pinchflat_data
type: volume
to:
- aws_s3

View File

@ -1,16 +0,0 @@
version: 2
backends:
albatross:
type: local
path: "/docker_volume_backups"
locations:
caddy_caddy_config:
from: caddy_caddy_config
type: volume
to:
- albatross

View File

@ -1,14 +1,13 @@
version: '3.9'
services: services:
autorestic: autorestic:
image: cupcakearmy/autorestic image: cupcakearmy/autorestic
container_name: autorestic container_name: autorestic
privileged: true privileged: true
environment:
- RESTIC_REPOSITORY=albatross
volumes: volumes:
- /home/geezo/docker_containers/autorestic:/data - /home/geezo/docker_containers/autorestic:/data
- /home/geezo/docker_containers/immich:/immich - /home/geezo/docker_containers/immich:/immich
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
- /home/geezo/nfs_shares/docker_volume_backups:/docker_volume_backups
command: autorestic backup -va -c /data/config.yaml command: autorestic backup -va -c /data/config.yaml
restart: no restart: no

View File

@ -1,29 +0,0 @@
services:
beaverhabits:
container_name: beaverhabits
user: 1000:1000 # User permissions of your docker or default user.
environment:
# See the note below to find all the environment variables
- HABITS_STORAGE=USER_DISK # DATABASE stores in a single SQLite database named habits.db. USER_DISK option saves in a local json file.
# Skip authentication
- TRUSTED_LOCAL_EMAIL=gaxinto@theodorio.com
- ENABLE_IOS_STANDALONE=true
volumes:
- /home/geezo/docker_containers/beaverhabits:/app/.user/ # Change directory to match your docker file scheme.
ports:
- 1020:8080
restart: unless-stopped
image: daya0576/beaverhabits:latest
labels:
glance.name: BeaverHabits
glance.icon: si:checkmarx
glance.url: "https://habits.theocorp"
glance.description: Habit Tacker
glance.hide: false
networks:
- tunnel
networks:
tunnel:
external: true
default:

View File

@ -1,30 +0,0 @@
services:
beszel:
image: henrygd/beszel:latest
container_name: beszel
restart: unless-stopped
extra_hosts:
- host.docker.internal:host-gateway
ports:
- 1018:8090
volumes:
- ./beszel_data:/beszel_data
labels:
glance.name: Beszel
glance.icon: si:jellyfin
glance.url: https://beszel.theocorp
glance.description: Server Monitoring
glance.hide: false
beszel-agent:
image: henrygd/beszel-agent:latest
container_name: beszel-agent
restart: unless-stopped
network_mode: host
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
PORT: 45876
# Do not remove quotes around the key
KEY: 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILeG11Y+SwGWJyIkheCNayVRHbvBnvoSdk24P1IVPMsp'

View File

@ -6,27 +6,27 @@ gitea.theocorp {
glance.theocorp { glance.theocorp {
tls internal tls internal
reverse_proxy glance:8080 reverse_proxy glance-glance-1:8080
} }
hoarder.theocorp { hoarder.theocorp {
tls internal tls internal
reverse_proxy hoarder:3000 reverse_proxy hoarder-web-1:3000
} }
immich.theocorp { immich.theocorp {
tls internal tls internal
reverse_proxy immich:2283 reverse_proxy immich_server:2283
} }
n8n.theocorp { n8n.theocorp {
tls internal tls internal
reverse_proxy n8n:5678 reverse_proxy n8n-n8n-1:5678
} }
navidrome.theocorp { navidrome.theocorp {
tls internal tls internal
reverse_proxy navidrome:4533 reverse_proxy navidrome-navidrome-1:4533
} }
olivetin.theocorp { olivetin.theocorp {
@ -41,35 +41,15 @@ paperless-ai.theocorp {
paperless.theocorp { paperless.theocorp {
tls internal tls internal
reverse_proxy paperless-ngx:8000 reverse_proxy paperless-ngx-webserver-1:8000
} }
portainer.theocorp { portainer.theocorp {
tls internal tls internal
reverse_proxy portainer:9000 reverse_proxy portainer-portainer-1:9000
} }
vaultwarden.theocorp { vaultwarden.theocorp {
tls internal tls internal
reverse_proxy vaultwarden:80 reverse_proxy vaultwarden:80
} }
beszel.theocorp {
tls internal
reverse_proxy beszel:8090
}
dozzle.theocorp {
tls internal
reverse_proxy dozzle:8080
}
hastebin.theocorp {
tls internal
reverse_proxy hastebin:7777
}
habits.theocorp {
tls internal
reverse_proxy beaverhabits:8080
}

View File

@ -28,9 +28,6 @@ services:
- paperless-ngx_default - paperless-ngx_default
- vaultwarden_default - vaultwarden_default
- yams_default - yams_default
- beszel_default
- dozzle_default
- beaverhabits_default
volumes: volumes:
caddy_data: caddy_data:
@ -61,10 +58,4 @@ networks:
vaultwarden_default: vaultwarden_default:
external: true external: true
yams_default: yams_default:
external: true
beszel_default:
external: true
dozzle_default:
external: true
beaverhabits_default:
external: true external: true

View File

@ -5,11 +5,4 @@ services:
volumes: volumes:
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
ports: ports:
- 1015:8080 - 1015:8080
labels:
glance.name: Dozzle
glance.icon: si:jellyfin
glance.url: https://dozzle.theocorp
glance.description: Container Logs
glance.hide: false

View File

@ -31,7 +31,6 @@ services:
postgres: postgres:
image: postgres:14 image: postgres:14
container_name: gitea-portgress
restart: always restart: always
environment: environment:
- POSTGRES_USER=gitea - POSTGRES_USER=gitea

View File

@ -1,9 +1,7 @@
theme: theme:
background-color: 220, 25, 5 # Near-black navy for a sleek, ultra-dark look background-color: 50 1 6
contrast-multiplier: 1.2 contrast-multiplier: 1.2
primary-color: 210, 60, 30 # Deep, rich blue for a subtle but stylish accent primary-color: 217 92 83
positive-color: 190, 45, 20 # Dark teal for a modern, professional feel
negative-color: 355, 50, 25 # Muted crimson for a softer, low-contrast warning
pages: pages:
- name: Startpage - name: Startpage
@ -13,9 +11,33 @@ pages:
widgets: widgets:
- type: search - type: search
autofocus: true autofocus: true
- type: docker-containers - type: monitor
hide-by-default: true cache: 1m
title: Services
sites:
- title: Gitea
url: "https://gitea.theocorp"
- title: Glance
url: "https://glance.theocorp"
- title: Hoarder
url: "https://hoarder.theocorp"
- title: Immich
url: "https://immich.theocorp"
- title: n8n
url: "https://n8n.theocorp"
- title: Navidrome
url: "https://navidrome.theocorp"
- title: Olivetin
url: "https://olivetin.theocorp"
- title: Paperless AI
url: "https://paperless-ai.theocorp"
- title: Paperless
url: "https://paperless.theocorp"
- title: Portainer
url: "https://portainer.theocorp"
- title: Vaultwarden
url: "https://vaultwarden.theocorp"
- type: bookmarks - type: bookmarks
groups: groups:

View File

@ -6,17 +6,6 @@ services:
- ./config:/app/config - ./config:/app/config
- /etc/timezone:/etc/timezone:ro - /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro - /etc/localtime:/etc/localtime:ro
- /var/run/docker.sock:/var/run/docker.sock
ports: ports:
- 1005:8080 - 1005:8080
restart: unless-stopped restart: unless-stopped
networks:
- tunnel
- default
networks:
tunnel:
external: true
default:

View File

@ -7,12 +7,6 @@ services:
STORAGE_HOST: hastebinredis STORAGE_HOST: hastebinredis
ports: ports:
- "1006:7777" - "1006:7777"
labels:
glance.name: Hastebin
glance.icon: si:jellyfin
glance.url: https://hastebin.theocorp
glance.description: Private Note Bin
glance.hide: false
hastebinredis: hastebinredis:
container_name: hastebinredis container_name: hastebinredis
image: redis image: redis

View File

@ -15,15 +15,6 @@ services:
BROWSER_WEB_URL: http://chrome:9222 BROWSER_WEB_URL: http://chrome:9222
OPENAI_API_KEY: "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" OPENAI_API_KEY: "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"
DATA_DIR: /data DATA_DIR: /data
networks:
- tunnel
- default
labels:
glance.name: Hoarder
glance.icon: si:jellyfin
glance.url: https://hoarder.theocorp
glance.description: Link saving
glance.hide: false
chrome: chrome:
container_name: hoarder-chrome container_name: hoarder-chrome
image: gcr.io/zenika-hub/alpine-chrome:123 image: gcr.io/zenika-hub/alpine-chrome:123
@ -49,9 +40,3 @@ services:
volumes: volumes:
meilisearch: meilisearch:
hoarder_data: hoarder_data:
networks:
tunnel:
external: true
default:

View File

@ -29,12 +29,6 @@ services:
restart: always restart: always
healthcheck: healthcheck:
disable: false disable: false
labels:
glance.name: Immich
glance.icon: si:immich
glance.url: https://immich.theocorp
glance.description: Picture Storage Cloud
glance.hide: false
immich-machine-learning: immich-machine-learning:
container_name: immich-machine-learning container_name: immich-machine-learning
@ -60,7 +54,7 @@ services:
restart: always restart: always
database: database:
container_name: immich-postgres container_name: immich_postgres
image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0 image: docker.io/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
environment: environment:
POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_PASSWORD: ${DB_PASSWORD}

View File

@ -16,21 +16,6 @@ services:
volumes: volumes:
- "./data:/data" - "./data:/data"
- "./:/music:ro" - "./:/music:ro"
networks:
- tunnel
- default
labels:
glance.name: Navidrome
glance.icon: si:applemusic
glance.url: https://navidrome.geezo.io
glance.description: Music Server
glance.hide: false
volumes: volumes:
navidrome_data: navidrome_data:
networks:
tunnel:
external: true
default:

View File

@ -32,17 +32,3 @@ services:
- MYSQL_DATABASE=nextcloud - MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud - MYSQL_USER=nextcloud
- MYSQL_HOST=db - MYSQL_HOST=db
networks:
- tunnel
- default
labels:
glance.name: NextCloud
glance.icon: si:nextcloud
glance.url: https://cloud.geezo.io
glance.description: Private Cloud
glance.hide: false
networks:
tunnel:
external: true
default:

View File

@ -1,6 +1,6 @@
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 compose -f /autorestic/docker-compose.yml up"
icon: <iconify-icon icon="lets-icons:save-duotone" width="48" height="24"></iconify-icon> icon: <iconify-icon icon="lets-icons:save-duotone" width="48" height="24"></iconify-icon>
execOnCron: execOnCron:
- "@daily" - "@daily"

View File

@ -10,11 +10,4 @@ services:
- "1004:1337" - "1004:1337"
restart: unless-stopped restart: unless-stopped
privileged: true privileged: true
user: root user: root
command: apt-get install docker-compose-plugin
labels:
glance.name: Olivetin
glance.icon: si:purescript
glance.url: https://olivetin.theocorp
glance.description: Canned Scripts UI
glance.hide: false

View File

@ -65,12 +65,6 @@ services:
PAPERLESS_REDIS: redis://broker:6379 PAPERLESS_REDIS: redis://broker:6379
PAPERLESS_DBHOST: db PAPERLESS_DBHOST: db
PAPERLESS_URL: https://paperless.theocorp PAPERLESS_URL: https://paperless.theocorp
labels:
glance.name: Paperless
glance.icon: si:paperlessngx
glance.url: https://paperless.theocorp
glance.description: Document Storage
glance.hide: false
volumes: volumes:
data: data:

View File

@ -9,11 +9,5 @@ services:
- portainer_data:/data - portainer_data:/data
- /var/run/docker.sock:/var/run/docker.sock - /var/run/docker.sock:/var/run/docker.sock
restart: unless-stopped restart: unless-stopped
labels:
glance.name: Portainer
glance.icon: si:portainer
glance.url: https://portainer.theocorp
glance.description: Container Management UI
glance.hide: false
volumes: volumes:
portainer_data: portainer_data:

View File

@ -9,16 +9,5 @@ services:
- vaultwarden_data:/data/ - vaultwarden_data:/data/
ports: ports:
- 1008:80 - 1008:80
networks:
- tunnel
- default
volumes: volumes:
vaultwarden_data: vaultwarden_data:
networks:
tunnel:
external: true
default: