Compare commits

...
18 Commits
35 changed files with 489 additions and 117 deletions
+1 -1
View File
@@ -17,6 +17,6 @@ services:
- /mnt/user/appdata/n8n/n8n_data:/home/node/.n8n
- /mnt/user/appdata/n8n/local-files:/files
labels:
folder.view2: "Services"
folder.view3: "Services"
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/n8n.png"
net.unraid.docker.webui: "https://automation.homecube.org"
+1
View File
@@ -0,0 +1 @@
true
+1 -1
View File
@@ -4,4 +4,4 @@ services:
net.unraid.docker.managed: 'composeman'
net.unraid.docker.icon: 'https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/borgmatic.png'
net.unraid.docker.webui: ''
net.unraid.docker.shell: ''
net.unraid.docker.shell: 'sh'
+9 -3
View File
@@ -2,9 +2,13 @@ services:
borgmatic:
image: ghcr.io/borgmatic-collective/borgmatic:latest
container_name: borgmatic
hostname: cube-nas
volumes:
- /mnt/user/nextcloud-data/tonitrus/files/documents/Schule:/mnt/source:ro # backup source
- /mnt/remotes/10.0.0.50_home/Drive/backup-cube-test:/mnt/borg-repository # backup target
- /mnt/user/appdata:/mnt/source/docker/appdata:ro # backup sources
- /boot/config/plugins/compose.manager/projects:/mnt/source/docker/compose:ro
- /mnt/user/immich-uploads/library:/mnt/source/media/immich/library:ro
- /mnt/remotes/10.0.0.50_backup-cube:/mnt/borg-repository:shared # backup target
- /mnt/user/appdata/borgmatic/borgmatic.d:/etc/borgmatic.d/ # borgmatic config file(s) + crontab.txt
- /mnt/user/appdata/borgmatic/.config/borg:/root/.config/borg # config and keyfiles
- /mnt/user/appdata/borgmatic/.ssh:/root/.ssh # ssh key for remote repositories
@@ -12,7 +16,9 @@ services:
- /mnt/user/appdata/borgmatic/.state/borgmatic:/root/.local/state/borgmatic # Here are the state files for periodic checks
env_file:
- .env
environment:
CRON: false
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/borgmatic.png"
net.unraid.docker.shell: sh
folder.view2: "Services"
folder.view3: "Services"
+6
View File
@@ -23,3 +23,9 @@ services:
net.unraid.docker.icon: 'https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/nextcloud-icon.png'
net.unraid.docker.webui: ''
net.unraid.docker.shell: ''
nc-talk:
labels:
net.unraid.docker.managed: 'composeman'
net.unraid.docker.icon: 'https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/nextcloud-icon.png'
net.unraid.docker.webui: ''
net.unraid.docker.shell: ''
+69 -8
View File
@@ -12,7 +12,7 @@ services:
- MYSQL_USER=nextcloud
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/mariadb-icon.png"
folder.view2: "Databases"
folder.view3: "Databases"
redis:
image: redis
@@ -22,7 +22,7 @@ services:
command: redis-server --requirepass ${REDIS_HOST_PASSWORD}
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/redis.png"
folder.view2: "Databases"
folder.view3: "Databases"
appapi-dsp:
image: ghcr.io/nextcloud/nextcloud-appapi-dsp:release
@@ -35,10 +35,10 @@ services:
privileged: true
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/nextcloud-icon.png"
folder.view2: "Nextcloud ExApps"
folder.view3: "Nextcloud ExApps"
app:
image: nextcloud:33
image: nextcloud:34
container_name: nextcloud
depends_on:
- db
@@ -54,7 +54,7 @@ services:
environment:
- NEXTCLOUD_ADMIN_USER=${NEXTCLOUD_ADMIN_USER}
- NEXTCLOUD_ADMIN_PASSWORD=${NEXTCLOUD_ADMIN_PASSWORD}
- NEXTCLOUD_TRUSTED_DOMAINS=${NEXTCLOUD_TRUSTED_DOMAINS}
- NEXTCLOUD_TRUSTED_DOMAINS=${DOMAIN}
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
@@ -69,9 +69,70 @@ services:
- TRUSTED_PROXIES=172.28.0.2
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/nextcloud-icon.png"
net.unraid.docker.webui: "https://cloud.homecube.org"
folder.view2: "Services"
net.unraid.docker.webui: "https://${DOMAIN}"
folder.view3: "Services"
pangolin.public-resources.nextcloud-server.name: "${RESOURCE_NAME}"
pangolin.public-resources.nextcloud-server.full-domain: "${DOMAIN}"
pangolin.public-resources.nextcloud-server.protocol: "http"
pangolin.public-resources.nextcloud-server.auth.sso-enabled: false
pangolin.public-resources.nextcloud-server.targets[0].method: "http"
pangolin.public-resources.nextcloud-server.targets[0].hostname: "nextcloud"
pangolin.public-resources.nextcloud-server.targets[0].port: 80
# HOMEPAGE
homepage.group: Cloud
homepage.name: Nextcloud
homepage.icon: nextcloud.png
homepage.href: "https://${DOMAIN}"
homepage.description: Files and collaboration
nc-talk:
container_name: nextcloud-hpb
image: ghcr.io/nextcloud-releases/aio-talk:latest
init: true
networks:
- default
- pangolin
ports:
- 3478:3478/tcp
- 3478:3478/udp
environment:
- NC_DOMAIN=${DOMAIN}
- TALK_HOST=${TALK_HOST}
- TURN_SECRET=${TURN_SECRET}
- SIGNALING_SECRET=${SIGNALING_SECRET}
- TZ=Europe/Vienna
- TALK_PORT=3478
- INTERNAL_SECRET=${INTERNAL_SECRET}
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/nextcloud-icon.png"
folder.view3: "Infrastructure"
pangolin.public-resources.nextcloud-hpb.name: "${HPB_RESOURCE_NAME}"
pangolin.public-resources.nextcloud-hpb.full-domain: "${TALK_HOST}"
pangolin.public-resources.nextcloud-hpb.protocol: "http"
pangolin.public-resources.nextcloud-hpb.auth.sso-enabled: false
pangolin.public-resources.nextcloud-hpb.targets[0].method: "http"
pangolin.public-resources.nextcloud-hpb.targets[0].hostname: "nextcloud-hpb"
pangolin.public-resources.nextcloud-hpb.targets[0].port: 8081
pangolin.public-resources.nextcloud-hpb-turn-tcp.name: "${HPB_RESOURCE_NAME} TURN TCP"
pangolin.public-resources.nextcloud-hpb-turn-tcp.protocol: "tcp"
pangolin.public-resources.nextcloud-hpb-turn-tcp.proxy-port: 3478
pangolin.public-resources.nextcloud-hpb-turn-tcp.targets[0].hostname: "nextcloud-hpb"
pangolin.public-resources.nextcloud-hpb-turn-tcp.targets[0].port: 3478
pangolin.public-resources.nextcloud-hpb-turn-udp.name: "${HPB_RESOURCE_NAME} TURN UDP"
pangolin.public-resources.nextcloud-hpb-turn-udp.protocol: "udp"
pangolin.public-resources.nextcloud-hpb-turn-udp.proxy-port: 3478
pangolin.public-resources.nextcloud-hpb-turn-udp.targets[0].hostname: "nextcloud-hpb"
pangolin.public-resources.nextcloud-hpb-turn-udp.targets[0].port: 3478
networks:
nextcloud-exapps:
name: nextcloud-exapps
+2 -2
View File
@@ -14,7 +14,7 @@ services:
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/koillection.png"
net.unraid.docker.webui: "https://koillection.homecube.org"
folder.view2: "Services"
folder.view3: "Services"
db:
image: postgres:16
@@ -30,4 +30,4 @@ services:
- /mnt/user/appdata/koillection/postgresql:/var/lib/postgresql/data
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/postgresql.png"
folder.view2: "Databases"
folder.view3: "Databases"
+1 -1
View File
@@ -19,4 +19,4 @@ services:
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/syncthing.png"
net.unraid.docker.webui: "https://syncthing.homecube.org"
folder.view2: "Services"
folder.view3: "Services"
+7 -4
View File
@@ -16,7 +16,7 @@ services:
retries: 3
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/mariadb-icon.png"
folder.view2: "Databases"
folder.view3: "Databases"
redis:
image: redis:6.2-alpine
@@ -30,10 +30,11 @@ services:
start_period: 10s
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/redis.png"
folder.view2: "Databases"
folder.view3: "Databases"
pterodactyl-panel:
image: ghcr.io/pterodactyl/panel:latest
container_name: pterodactyl-panel
environment:
# Application settings
- APP_URL=${APP_URL}
@@ -75,10 +76,11 @@ services:
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/pterodactyl.png"
net.unraid.docker.webui: "https://game-servers.homecube.org"
folder.view2: "Game Servers"
folder.view3: "Game Servers"
pterodactyl-wings:
image: ghcr.io/pterodactyl/wings:latest
container_name: pterodactyl-wings
privileged: true
environment:
- TZ=${APP_TIMEZONE}
@@ -88,10 +90,11 @@ services:
- /mnt/user/pterodactyl-node/data/:/mnt/user/pterodactyl-node/data/
- /mnt/user/pterodactyl-node/tmp/:/mnt/user/pterodactyl-node/tmp/
- /mnt/user/pterodactyl-node/config/:/etc/pterodactyl/
- /run/wings:/run/wings
ports:
- "7001:8080" # Wings API
- "2022:2022" # SFTP
working_dir: /var/lib/pterodactyl
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/pterodactyl.png"
folder.view2: "Game Servers"
folder.view3: "Game Servers"
+1
View File
@@ -0,0 +1 @@
true
+13
View File
@@ -0,0 +1,13 @@
services:
dockerproxy:
labels:
net.unraid.docker.managed: 'composeman'
net.unraid.docker.icon: 'https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/homepage.png'
net.unraid.docker.webui: ''
net.unraid.docker.shell: ''
homepage:
labels:
net.unraid.docker.managed: 'composeman'
net.unraid.docker.icon: 'https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/homepage.png'
net.unraid.docker.webui: 'https://${FULL_DOMAIN}'
net.unraid.docker.shell: ''
+56
View File
@@ -0,0 +1,56 @@
services:
dockerproxy:
image: ghcr.io/tecnativa/docker-socket-proxy:latest
container_name: homepage-dockerproxy
environment:
- CONTAINERS=1 # Allow access to viewing containers
- SERVICES=0 # Allow access to viewing services (necessary when using Docker Swarm)
- TASKS=0 # Allow access to viewing tasks (necessary when using Docker Swarm)
- POST=0 # Disallow any POST operations (effectively read-only)
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro # Mounted as read-only
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/homepage.png"
folder.view3: "Infrastructure"
homepage:
image: ghcr.io/gethomepage/homepage:latest
container_name: homepage
environment:
HOMEPAGE_ALLOWED_HOSTS: "${FULL_DOMAIN},10.0.0.1:8027,cube.internal:8027"
PUID: 99
PGID: 100
ports:
- 8027:3000
volumes:
- /mnt/user/appdata/homepage:/app/config
networks:
- default
- pangolin
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/homepage.png"
net.unraid.docker.webui: "https://${FULL_DOMAIN}"
folder.view3: "Services"
pangolin.public-resources.gethomepage-homepage.name: "${RESOURCE_NAME}"
pangolin.public-resources.gethomepage-homepage.full-domain: "${FULL_DOMAIN}"
pangolin.public-resources.gethomepage-homepage.protocol: "http"
pangolin.public-resources.gethomepage-homepage.auth.sso-enabled: true
pangolin.public-resources.gethomepage-homepage.auth.sso-roles[0]: "Member"
pangolin.public-resources.gethomepage-homepage.targets[0].method: "http"
pangolin.public-resources.gethomepage-homepage.targets[0].healthcheck.enabled: true
pangolin.public-resources.gethomepage-homepage.targets[0].healthcheck.hostname: "homepage"
pangolin.public-resources.gethomepage-homepage.targets[0].healthcheck.port: 3000
pangolin.public-resources.gethomepage-homepage.targets[0].healthcheck.path: "/"
pangolin.public-resources.gethomepage-homepage.targets[0].healthcheck.method: "GET"
pangolin.public-resources.gethomepage-homepage.targets[0].healthcheck.status: 200
pangolin.public-resources.gethomepage-homepage.targets[0].healthcheck.interval: 30
pangolin.public-resources.gethomepage-homepage.targets[0].healthcheck.timeout: 5
networks:
pangolin:
name: pangolin_net
external: true
+1
View File
@@ -0,0 +1 @@
homepage
+15 -13
View File
@@ -26,6 +26,7 @@ services:
- ${UPLOAD_LOCATION}:/data
- /mnt/user/volume1/photo:/mnt/media/master-library:ro # Mount External Library "Master Library"
- /mnt/user/nextcloud-data/tonitrus/files/photos:/mnt/media/tonitrus-photos:ro # Mount External Library "Tonitrus Photos"
- /mnt/user/nextcloud-data/Purplebunny/files/photos:/mnt/media/purplebunny-photos:ro # Mount External Library "Purplebunny Photos"
- /etc/localtime:/etc/localtime:ro
ports:
- "2283:2283"
@@ -43,7 +44,7 @@ services:
labels:
- net.unraid.docker.icon=https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/immich.png
- net.unraid.docker.webui=https://${FULL_DOMAIN}
- folder.view2=Services
- folder.view3=Services
- pangolin.public-resources.immich-server.name=${RESOURCE_NAME}
- pangolin.public-resources.immich-server.full-domain=${FULL_DOMAIN}
@@ -51,6 +52,7 @@ services:
- pangolin.public-resources.immich-server.auth.sso-enabled=true
- pangolin.public-resources.immich-server.auth.sso-roles[0]=Member
- pangolin.public-resources.immich-server.auth.whitelist-users[0]=katrin.lang@drei.at
- pangolin.public-resources.immich-server.targets[0].method=http
@@ -70,19 +72,19 @@ services:
- pangolin.public-resources.immich-server.rules[1].match=path
- pangolin.public-resources.immich-server.rules[1].value=/.well-known/immich
# HOMEPAGE
- homepage.group=Media
- homepage.name=Immich
- homepage.icon=immich.png
- homepage.href=https://${FULL_DOMAIN}
- homepage.description=Photo management
immich-machine-learning:
container_name: immich_machine_learning
# For hardware acceleration, add one of -[armnn, cuda, rocm, openvino, rknn] to the image tag.
# Example tag: ${IMMICH_VERSION:-release}-cuda
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}-cuda
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities:
- gpu
# Currently no hardware acceleration because NVIDIA has too little VRAM and AMD iGPU is not supported
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
volumes:
- model-cache:/cache
env_file:
@@ -92,7 +94,7 @@ services:
disable: false
labels:
- net.unraid.docker.icon=https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/immich.png
- folder.view2=Services
- folder.view3=Services
redis:
container_name: immich_redis
@@ -102,7 +104,7 @@ services:
restart: always
labels:
- net.unraid.docker.icon=https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/redis.png
- folder.view2=Databases
- folder.view3=Databases
database:
container_name: immich_postgres
@@ -123,7 +125,7 @@ services:
disable: false
labels:
- net.unraid.docker.icon=https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/postgresql.png
- folder.view2=Databases
- folder.view3=Databases
volumes:
model-cache:
+1 -1
View File
@@ -1 +1 @@
true
false
+1 -1
View File
@@ -7,7 +7,7 @@ services:
labels:
- net.unraid.docker.icon=https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/it-tools.png
- net.unraid.docker.webui=https://${FULL_DOMAIN}
- folder.view2=Services
- folder.view3=Services
- pangolin.public-resources.it-tools.name=IT-Tools
- pangolin.public-resources.it-tools.full-domain=${FULL_DOMAIN}
+1 -1
View File
@@ -1 +1 @@
true
false
+2 -2
View File
@@ -14,7 +14,7 @@ services:
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/ollama.png"
net.unraid.docker.shell: bash
folder.view2: "Services"
folder.view3: "Services"
open-webui:
image: ghcr.io/open-webui/open-webui:main-slim
@@ -34,4 +34,4 @@ services:
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/open-webui.png"
net.unraid.docker.webui: "https://ai.homecube.org/"
folder.view2: "Services"
folder.view3: "Services"
@@ -11,3 +11,9 @@ services:
net.unraid.docker.icon: 'https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/lyrion-music-server.png'
net.unraid.docker.webui: 'https://music.homecube.org'
net.unraid.docker.shell: ''
lms2:
labels:
net.unraid.docker.managed: 'composeman'
net.unraid.docker.icon: 'https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/lyrion-music-server.png'
net.unraid.docker.webui: 'https://${LMS_FULL_DOMAIN_2}'
net.unraid.docker.shell: ''
+64 -4
View File
@@ -4,7 +4,7 @@ services:
container_name: jellyfin
environment:
- TZ=Europe/Vienna
- JELLYFIN_PublishedServerUrl=https://tv.homecube.org
- JELLYFIN_PublishedServerUrl=https://${JELLYFIN_FULL_DOMAIN}
- NVIDIA_VISIBLE_DEVICES=GPU-6fbad217-d460-d92d-5829-f3a5f2153526
- NVIDIA_DRIVER_CAPABILITIES=all
runtime: nvidia
@@ -28,8 +28,23 @@ services:
# - 1900:1900/udp # SSDP/DLNA
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/jellyfin.png"
net.unraid.docker.webui: "https://tv.homecube.org"
folder.view2: "Services"
net.unraid.docker.webui: "https://${JELLYFIN_FULL_DOMAIN}"
folder.view3: "Services"
# HOMEPAGE
homepage.group: Media
homepage.name: Jellyfin
homepage.icon: jellyfin.png
homepage.href: "https://${JELLYFIN_FULL_DOMAIN}"
homepage.description: Media server
# widget
homepage.widget.type: jellyfin
homepage.widget.version: 2
homepage.widget.enableBlocks: true
homepage.widget.enableMediaControl: false
homepage.widget.expandOneStreamToTwoRows: false
homepage.widget.url: http://10.0.0.1:8096
homepage.widget.key: ${JELLYFIN_API_KEY}
lms:
image: epoupon/lms
@@ -45,7 +60,7 @@ services:
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/lyrion-music-server.png"
net.unraid.docker.webui: "https://${LMS_FULL_DOMAIN}"
folder.view2: "Services"
folder.view3: "Services"
pangolin.public-resources.lightweight-music-server.name: "${LMS_RESOURCE_NAME}"
pangolin.public-resources.lightweight-music-server.full-domain: "${LMS_FULL_DOMAIN}"
@@ -69,6 +84,51 @@ services:
pangolin.public-resources.lightweight-music-server.rules[0].match: "path"
pangolin.public-resources.lightweight-music-server.rules[0].value: "/rest/*" # OpenSubsonicAPI
# HOMEPAGE
homepage.group: Media
homepage.name: LMS
homepage.icon: navidrome.png
homepage.href: "https://${LMS_FULL_DOMAIN}"
homepage.description: Lightweight Music Server
lms2:
image: epoupon/lms
container_name: lms2
user: "99:100"
ports:
- "8028:5082"
volumes:
- /mnt/user/appdata/lms2:/var/lms:rw
- /mnt/user/volume1/music:/music:ro
networks:
- pangolin
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/lyrion-music-server.png"
net.unraid.docker.webui: "https://${LMS_FULL_DOMAIN_2}"
folder.view3: "Services"
pangolin.public-resources.lightweight-music-server-2.name: "${LMS_RESOURCE_NAME_2}"
pangolin.public-resources.lightweight-music-server-2.full-domain: "${LMS_FULL_DOMAIN_2}"
pangolin.public-resources.lightweight-music-server-2.protocol: "http"
pangolin.public-resources.lightweight-music-server-2.auth.sso-enabled: true
pangolin.public-resources.lightweight-music-server-2.auth.sso-roles[0]: "Member"
pangolin.public-resources.lightweight-music-server-2.targets[0].method: "http"
pangolin.public-resources.lightweight-music-server-2.targets[0].healthcheck.enabled: true
pangolin.public-resources.lightweight-music-server-2.targets[0].healthcheck.hostname: "lms2"
pangolin.public-resources.lightweight-music-server-2.targets[0].healthcheck.port: 5082
pangolin.public-resources.lightweight-music-server-2.targets[0].healthcheck.path: "/"
pangolin.public-resources.lightweight-music-server-2.targets[0].healthcheck.method: "GET"
pangolin.public-resources.lightweight-music-server-2.targets[0].healthcheck.status: 200
pangolin.public-resources.lightweight-music-server-2.targets[0].healthcheck.interval: 30
pangolin.public-resources.lightweight-music-server-2.targets[0].healthcheck.timeout: 5
pangolin.public-resources.lightweight-music-server-2.rules[0].action: "allow"
pangolin.public-resources.lightweight-music-server-2.rules[0].match: "path"
pangolin.public-resources.lightweight-music-server-2.rules[0].value: "/rest/*" # OpenSubsonicAPI
networks:
pangolin:
name: pangolin_net
+2 -2
View File
@@ -19,7 +19,7 @@ services:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/couchdb.png"
net.unraid.docker.webui: "https://obsidian.homecube.org/_utils"
net.unraid.docker.shell: bash
folder.view2: "Databases"
folder.view3: "Databases"
obsidian:
image: lscr.io/linuxserver/obsidian:latest
@@ -37,4 +37,4 @@ services:
net.unraid.docker.webui: "https://notes.obsidian.homecube.org"
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/obsidian-logo.png"
net.unraid.docker.shell: bash
folder.view2: "Services"
folder.view3: "Services"
+41 -3
View File
@@ -5,14 +5,52 @@ services:
networks:
- pangolin
environment:
DOMAIN: ${DOMAIN}
DOMAIN: "https://${DOMAIN}"
ADMIN_TOKEN: ${VAULTWARDEN_ADMIN_TOKEN}
volumes:
- /mnt/user/appdata/vaultwarden/data:/data/
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/bitwarden.png"
net.unraid.docker.webui: "${DOMAIN}"
folder.view2: "Services"
net.unraid.docker.webui: "https://${DOMAIN}"
folder.view3: "Services"
pangolin.public-resources.vaultwarden-server.name: "${RESOURCE_NAME}"
pangolin.public-resources.vaultwarden-server.full-domain: "${DOMAIN}"
pangolin.public-resources.vaultwarden-server.protocol: "http"
pangolin.public-resources.vaultwarden-server.auth.sso-enabled: true
pangolin.public-resources.vaultwarden-server.auth.sso-roles[0]: "Member"
pangolin.public-resources.vaultwarden-server.targets[0].method: "http"
pangolin.public-resources.vaultwarden-server.targets[0].healthcheck.enabled: true
pangolin.public-resources.vaultwarden-server.targets[0].healthcheck.hostname: "vaultwarden"
pangolin.public-resources.vaultwarden-server.targets[0].healthcheck.port: 80
pangolin.public-resources.vaultwarden-server.targets[0].healthcheck.path: "/api/alive"
pangolin.public-resources.vaultwarden-server.targets[0].healthcheck.method: "GET"
pangolin.public-resources.vaultwarden-server.targets[0].healthcheck.status: 200
pangolin.public-resources.vaultwarden-server.targets[0].healthcheck.interval: 30
pangolin.public-resources.vaultwarden-server.targets[0].healthcheck.timeout: 5
pangolin.public-resources.vaultwarden-server.rules[0].action: "allow"
pangolin.public-resources.vaultwarden-server.rules[0].match: "path"
pangolin.public-resources.vaultwarden-server.rules[0].value: "/api/*"
pangolin.public-resources.vaultwarden-server.rules[1].action: "allow"
pangolin.public-resources.vaultwarden-server.rules[1].match: "path"
pangolin.public-resources.vaultwarden-server.rules[1].value: "/identity/*"
pangolin.public-resources.vaultwarden-server.rules[2].action: "allow"
pangolin.public-resources.vaultwarden-server.rules[2].match: "path"
pangolin.public-resources.vaultwarden-server.rules[2].value: "/wl/*"
pangolin.public-resources.vaultwarden-server.rules[3].action: "deny"
pangolin.public-resources.vaultwarden-server.rules[3].match: "path"
pangolin.public-resources.vaultwarden-server.rules[3].value: "/admin/*"
# HOMEPAGE
homepage.group: Security
homepage.name: "${RESOURCE_NAME}"
homepage.icon: vaultwarden.png
homepage.href: "https://${DOMAIN}"
homepage.description: Password Manager
networks:
pangolin:
+2 -2
View File
@@ -1,6 +1,6 @@
services:
newt:
image: fosrl/newt:1.10.3
image: fosrl/newt:1.14.0
networks:
- pangolin
container_name: newt
@@ -16,7 +16,7 @@ services:
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/pangolin.png"
net.unraid.docker.webui: "https://proxy.homecube.org"
folder.view2: "Networking"
folder.view3: "Networking"
networks:
pangolin:
+10 -3
View File
@@ -12,7 +12,14 @@ services:
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/home-assistant.png"
net.unraid.docker.webui: "https://home-assistant.homecube.org"
folder.view2: "Services"
folder.view3: "Services"
# HOMEPAGE
homepage.group: Infrastructure
homepage.name: Home Assistant
homepage.icon: home-assistant.png
homepage.href: https://home-assistant.homecube.org
homepage.description: Smart Home
# hass_otbr:
# container_name: hass_otbr
@@ -40,7 +47,7 @@ services:
# volumes:
# - /mnt/user/appdata/hass_otbr:/var/lib/thread
# labels:
# folder.view2: "Services"
# folder.view3: "Services"
matter-server:
image: ghcr.io/matter-js/python-matter-server:stable
@@ -58,4 +65,4 @@ services:
- /run/dbus:/run/dbus:ro
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/homarr-labs/dashboard-icons/refs/heads/main/png/matter.png"
folder.view2: "Services"
folder.view3: "Services"
-7
View File
@@ -1,7 +0,0 @@
services:
speedtest:
labels:
net.unraid.docker.managed: 'composeman'
net.unraid.docker.icon: 'https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/librespeed-icon.png'
net.unraid.docker.webui: 'https://speedtest.homecube.org'
net.unraid.docker.shell: ''
-32
View File
@@ -1,32 +0,0 @@
services:
speedtest:
image: ghcr.io/librespeed/speedtest:latest
container_name: librespeed-speedtest
networks:
- pangolin
labels:
- net.unraid.docker.icon=https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/librespeed-icon.png
- net.unraid.docker.webui=https://${FULL_DOMAIN}
- folder.view2=Services
- pangolin.public-resources.librespeed-speedtest.name=Speedtest (LibreSpeed)
- pangolin.public-resources.librespeed-speedtest.full-domain=${FULL_DOMAIN}
- pangolin.public-resources.librespeed-speedtest.protocol=http
- pangolin.public-resources.librespeed-speedtest.auth.sso-enabled=true
- pangolin.public-resources.librespeed-speedtest.targets[0].method=http
- pangolin.public-resources.librespeed-speedtest.targets[0].port=8080
- pangolin.public-resources.librespeed-speedtest.targets[0].healthcheck.enabled=true
- pangolin.public-resources.librespeed-speedtest.targets[0].healthcheck.hostname=librespeed-speedtest
- pangolin.public-resources.librespeed-speedtest.targets[0].healthcheck.port=8080
- pangolin.public-resources.librespeed-speedtest.targets[0].healthcheck.path=/
- pangolin.public-resources.librespeed-speedtest.targets[0].healthcheck.method=GET
- pangolin.public-resources.librespeed-speedtest.targets[0].healthcheck.status=200
- pangolin.public-resources.librespeed-speedtest.targets[0].healthcheck.interval=30
- pangolin.public-resources.librespeed-speedtest.targets[0].healthcheck.timeout=5
networks:
pangolin:
name: pangolin_net
external: true
-1
View File
@@ -1 +0,0 @@
speedtest
+38 -6
View File
@@ -18,16 +18,17 @@ services:
retries: 3
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/mysql-icon.png"
folder.view2: "Databases"
folder.view3: "Databases"
kimai:
image: kimai/kimai2:apache
image: kimai/kimai2:stable
container_name: kimai
volumes:
- /mnt/user/appdata/kimai/data:/opt/kimai/var/data
- /mnt/user/appdata/kimai/plugins:/opt/kimai/var/plugins
ports:
- 7183:8001
networks:
- default
- pangolin
environment:
- ADMINMAIL=${ADMIN_EMAIL}
- ADMINPASS=${ADMIN_PASSWORD}
@@ -36,6 +37,37 @@ services:
- MAILER_FROM=${MAILER_FROM}
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/kimai-logo.png"
net.unraid.docker.webui: https://kimai.homecube.org
net.unraid.docker.webui: https://${DOMAIN}
net.unraid.docker.shell: bash
folder.view2: "Services"
folder.view3: "Services"
pangolin.public-resources.kimai-time-tracking.name: "${RESOURCE_NAME}"
pangolin.public-resources.kimai-time-tracking.full-domain: "${DOMAIN}"
pangolin.public-resources.kimai-time-tracking.protocol: "http"
pangolin.public-resources.kimai-time-tracking.auth.sso-enabled: true
pangolin.public-resources.kimai-time-tracking.auth.sso-roles[0]: "Member"
pangolin.public-resources.kimai-time-tracking.targets[0].method: "http"
pangolin.public-resources.kimai-time-tracking.targets[0].port: 8001
pangolin.public-resources.kimai-time-tracking.targets[0].healthcheck.enabled: true
pangolin.public-resources.kimai-time-tracking.targets[0].healthcheck.hostname: "kimai"
pangolin.public-resources.kimai-time-tracking.targets[0].healthcheck.port: 8001
pangolin.public-resources.kimai-time-tracking.targets[0].healthcheck.path: "/"
pangolin.public-resources.kimai-time-tracking.targets[0].healthcheck.method: "GET"
pangolin.public-resources.kimai-time-tracking.targets[0].healthcheck.status: 200
pangolin.public-resources.kimai-time-tracking.targets[0].healthcheck.interval: 30
pangolin.public-resources.kimai-time-tracking.targets[0].healthcheck.timeout: 5
# HOMEPAGE
homepage.group: Productivity
homepage.name: Kimai
homepage.icon: kimai.png
homepage.href: https://${DOMAIN}
homepage.description: Time Tracking
networks:
pangolin:
name: pangolin_net
external: true
+45 -9
View File
@@ -6,6 +6,8 @@ services:
- NET_ADMIN
devices:
- /dev/net/tun:/dev/net/tun
networks:
- pangolin
ports:
- 47965:47965
- 47965:47965/udp
@@ -14,13 +16,13 @@ services:
volumes:
- /mnt/user/appdata/gluetun:/gluetun
environment:
- VPN_SERVICE_PROVIDER=airvpn
- VPN_TYPE=wireguard
- WIREGUARD_PRIVATE_KEY=QEMKP5heBjTLoXwXKa63JneOlOji4jOOiW4mTCRDjn0=
- WIREGUARD_PRESHARED_KEY=QpyvbpItLpbYHQwZ7fESaqUxG4R6owGEkcuHicVp5JU=
- WIREGUARD_ADDRESSES=10.189.105.151/32
- SERVER_COUNTRIES=Netherlands
- FIREWALL_VPN_INPUT_PORTS=19769
- VPN_SERVICE_PROVIDER=${VPN_SERVICE_PROVIDER}
- VPN_TYPE=${VPN_TYPE}
- WIREGUARD_PRIVATE_KEY=${WIREGUARD_PRIVATE_KEY}
- WIREGUARD_PRESHARED_KEY=${WIREGUARD_PRESHARED_KEY}
- WIREGUARD_ADDRESSES=${WIREGUARD_ADDRESSES}
- SERVER_COUNTRIES=${SERVER_COUNTRIES}
- FIREWALL_VPN_INPUT_PORTS=${FIREWALL_VPN_INPUT_PORTS}
- BLOCK_MALICIOUS=off
- BLOCK_SURVEILLANCE=off
- BLOCK_ADS=off
@@ -32,7 +34,26 @@ services:
retries: 5
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/gluetun.png"
folder.view2: "Networking"
folder.view3: "Networking"
pangolin.public-resources.qbittorrent-torrent.name: "${RESOURCE_NAME}"
pangolin.public-resources.qbittorrent-torrent.full-domain: "${DOMAIN}"
pangolin.public-resources.qbittorrent-torrent.protocol: "http"
pangolin.public-resources.qbittorrent-torrent.auth.sso-enabled: true
pangolin.public-resources.qbittorrent-torrent.auth.sso-users[0]: "margaretha.stephan@gmail.com"
pangolin.public-resources.qbittorrent-torrent.targets[0].method: "http"
pangolin.public-resources.qbittorrent-torrent.targets[0].port: 8080
pangolin.public-resources.qbittorrent-torrent.targets[0].healthcheck.enabled: true
pangolin.public-resources.qbittorrent-torrent.targets[0].healthcheck.hostname: "gluetun"
pangolin.public-resources.qbittorrent-torrent.targets[0].healthcheck.port: 8080
pangolin.public-resources.qbittorrent-torrent.targets[0].healthcheck.path: "/"
pangolin.public-resources.qbittorrent-torrent.targets[0].healthcheck.method: "GET"
pangolin.public-resources.qbittorrent-torrent.targets[0].healthcheck.status: 200
pangolin.public-resources.qbittorrent-torrent.targets[0].healthcheck.interval: 30
pangolin.public-resources.qbittorrent-torrent.targets[0].healthcheck.timeout: 5
qbittorrent:
image: lscr.io/linuxserver/qbittorrent:latest
@@ -51,4 +72,19 @@ services:
condition: service_healthy
labels:
net.unraid.docker.icon: "https://raw.githubusercontent.com/linuxserver/docker-templates/refs/heads/master/linuxserver.io/img/qbittorrent-icon.png"
folder.view2: "Services"
folder.view3: "Services"
# HOMEPAGE
homepage.group: Downloads
homepage.name: qBittorrent
homepage.icon: qbittorrent.png
homepage.href: https://${DOMAIN}
homepage.description: Torrents
# widget
homepage.widget.type: qbittorrent
homepage.widget.url: http://10.0.0.1:8080
networks:
pangolin:
name: pangolin_net
external: true
+1 -1
View File
@@ -3,7 +3,7 @@ services:
labels:
net.unraid.docker.managed: 'composeman'
net.unraid.docker.icon: 'https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/gitea.png'
net.unraid.docker.webui: ''
net.unraid.docker.webui: 'https://${DOMAIN}'
net.unraid.docker.shell: ''
runner:
labels:
+50 -9
View File
@@ -1,14 +1,17 @@
services:
gitea:
image: docker.gitea.com/gitea:1.24.5
image: docker.gitea.com/gitea:latest
container_name: gitea
networks:
- default
- pangolin
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__server__DOMAIN=${GITEA__server__DOMAIN}
- GITEA__server__SSH_DOMAIN=${GITEA__server__SSH_DOMAIN}
- GITEA__server__ROOT_URL=${GITEA__server__ROOT_URL}
- GITEA__server__DOMAIN=${DOMAIN}
- GITEA__server__SSH_DOMAIN=${DOMAIN}
- GITEA__server__ROOT_URL="https://${DOMAIN}/"
- GITEA__server__SSH_PORT=222 # external port users connect to
- GITEA__server__SSH_LISTEN_PORT=22 # internal container port
- GITEA__server__START_SSH_SERVER=false
@@ -27,7 +30,6 @@ services:
- /etc/localtime:/etc/localtime:ro
ports:
- "6734:3000"
- "222:22"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/api/healthz"]
interval: 30s
@@ -36,11 +38,45 @@ services:
start_period: 20s
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/gitea.png"
folder.view2: "Services"
net.unraid.docker.webui: "https://${DOMAIN}"
folder.view3: "Services"
pangolin.public-resources.gitea-version-control.name: "${RESOURCE_NAME}"
pangolin.public-resources.gitea-version-control.full-domain: "${DOMAIN}"
pangolin.public-resources.gitea-version-control.protocol: "http"
pangolin.public-resources.gitea-version-control.auth.sso-enabled: false
pangolin.public-resources.gitea-version-control.targets[0].method: "http"
pangolin.public-resources.gitea-version-control.targets[0].port: 3000
pangolin.public-resources.gitea-version-control.targets[0].healthcheck.enabled: true
pangolin.public-resources.gitea-version-control.targets[0].healthcheck.hostname: "gitea"
pangolin.public-resources.gitea-version-control.targets[0].healthcheck.port: 3000
pangolin.public-resources.gitea-version-control.targets[0].healthcheck.path: "/api/healthz"
pangolin.public-resources.gitea-version-control.targets[0].healthcheck.method: "GET"
pangolin.public-resources.gitea-version-control.targets[0].healthcheck.status: 200
pangolin.public-resources.gitea-version-control.targets[0].healthcheck.interval: 30
pangolin.public-resources.gitea-version-control.targets[0].healthcheck.timeout: 5
pangolin.public-resources.gitea-version-control-ssh.name: "${RESOURCE_NAME} SSH"
pangolin.public-resources.gitea-version-control-ssh.protocol: "tcp"
pangolin.public-resources.gitea-version-control-ssh.proxy-port: 222
pangolin.public-resources.gitea-version-control-ssh.targets[0].hostname: "gitea"
pangolin.public-resources.gitea-version-control-ssh.targets[0].port: 22
# HOMEPAGE
homepage.group: Development
homepage.name: Gitea
homepage.icon: gitea.png
homepage.href: "https://${DOMAIN}"
homepage.description: Git server
runner:
image: docker.io/gitea/act_runner:nightly
image: docker.io/gitea/act_runner:latest
container_name: gitea-runner
ports:
- "8012:8012"
depends_on:
gitea:
condition: service_healthy
@@ -55,4 +91,9 @@ services:
- /var/run/docker.sock:/var/run/docker.sock
labels:
net.unraid.docker.icon: "https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/gitea.png"
folder.view2: "Runners"
folder.view3: "Runners"
networks:
pangolin:
name: pangolin_net
external: true
+1
View File
@@ -0,0 +1 @@
false
@@ -0,0 +1,7 @@
services:
writing-webapp:
labels:
net.unraid.docker.managed: 'composeman'
net.unraid.docker.icon: ''
net.unraid.docker.webui: ''
net.unraid.docker.shell: ''
+33
View File
@@ -0,0 +1,33 @@
services:
writing-webapp:
image: registry.homecube.org/writing-webapp/app:main
container_name: writing-webapp
networks:
- pangolin
labels:
- net.unraid.docker.icon=https://cdn.jsdelivr.net/gh/selfhst/icons@main/png/booklogr.png
- net.unraid.docker.webui=https://${FULL_DOMAIN}
- folder.view3=Services
- pangolin.public-resources.writing-webapp.name=Writing-Webapp
- pangolin.public-resources.writing-webapp.full-domain=${FULL_DOMAIN}
- pangolin.public-resources.writing-webapp.protocol=http
- pangolin.public-resources.writing-webapp.auth.sso-enabled=true
- pangolin.public-resources.writing-webapp.auth.sso-roles[0]=Member
- pangolin.public-resources.writing-webapp.targets[0].method=http
- pangolin.public-resources.writing-webapp.targets[0].healthcheck.enabled=true
- pangolin.public-resources.writing-webapp.targets[0].healthcheck.hostname=writing-webapp
- pangolin.public-resources.writing-webapp.targets[0].healthcheck.port=8080
- pangolin.public-resources.writing-webapp.targets[0].healthcheck.path=/
- pangolin.public-resources.writing-webapp.targets[0].healthcheck.method=GET
- pangolin.public-resources.writing-webapp.targets[0].healthcheck.status=200
- pangolin.public-resources.writing-webapp.targets[0].healthcheck.interval=30
- pangolin.public-resources.writing-webapp.targets[0].healthcheck.timeout=5
networks:
pangolin:
name: pangolin_net
external: true
+1
View File
@@ -0,0 +1 @@
writing-webapp