Update docker-compose files from test system changes

This commit is contained in:
2026-01-15 15:09:54 -05:00
parent 0cf25e09a1
commit ab43dc79d5
4 changed files with 44 additions and 85 deletions

View File

@@ -19,14 +19,13 @@ services:
- dockerproxy-network - dockerproxy-network
volumes: volumes:
- ./homepage:/app/config - ./homepage:/app/config
- /var/run/docker.sock:/var/run/docker.sock:ro # For Docker integration - /var/run/docker.sock:/var/run/docker.sock # For Docker integration do not mount RO
- /opt/stacks:/opt/stacks:ro # To discover other stacks - /opt/stacks:/opt/stacks # To discover other stacks
environment: environment:
- PUID=${PUID:-1000} - PUID=995 # Must be set to the docker user ID
- PGID=${PGID:-1000} - PGID=995 # Must be set to the docker group ID
- TZ=${TZ} - TZ=${TZ}
- HOMEPAGE_ALLOWED_HOSTS=home.${DOMAIN} - HOMEPAGE_ALLOWED_HOSTS=home.${DOMAIN}
user: "${PUID:-1000}:${DOCKER_GID:-999}"
labels: labels:
- "homelab.category=dashboard" - "homelab.category=dashboard"
- "homelab.description=Application dashboard (AI-configurable)" - "homelab.description=Application dashboard (AI-configurable)"
@@ -50,7 +49,7 @@ services:
- ./homarr/config:/app/config/configs - ./homarr/config:/app/config/configs
- ./homarr/data:/data - ./homarr/data:/data
- ./homarr/icons:/app/public/icons - ./homarr/icons:/app/public/icons
- /var/run/docker.sock:/var/run/docker.sock:ro - /var/run/docker.sock:/var/run/docker.sock
environment: environment:
- TZ=${TZ} - TZ=${TZ}
labels: labels:

View File

@@ -15,11 +15,11 @@ services:
- dockerproxy-network - dockerproxy-network
volumes: volumes:
- /opt/stacks/homepage/config:/app/config - /opt/stacks/homepage/config:/app/config
- /var/run/docker.sock:/var/run/docker.sock # For Docker integration - /var/run/docker.sock:/var/run/docker.sock # For Docker integration do not mount RO
- /opt/stacks:/opt/stacks:ro # To discover other stacks - /opt/stacks:/opt/stacks:ro # To discover other stacks
environment: environment:
- PUID=995 - PUID=995 # Must be set to the docker user ID
- PGID=995 - PGID=995 # Must be set to the docker group ID
- TZ=${TZ} - TZ=${TZ}
- HOMEPAGE_ALLOWED_HOSTS=home.${DOMAIN} - HOMEPAGE_ALLOWED_HOSTS=home.${DOMAIN}
labels: labels:

View File

@@ -2,29 +2,6 @@
# Tools and services for development work # Tools and services for development work
services: services:
# Code Server - VS Code in the browser
# Access at: http://server-ip:8443
code-server:
image: lscr.io/linuxserver/code-server:4.20.0
container_name: code-server
restart: unless-stopped
networks:
- homelab-network
ports:
- "8443:8443"
volumes:
- ./config/code-server:/config
- ${PROJECTDIR:-/home/user/projects}:/projects
environment:
- PUID=${PUID:-1000}
- PGID=${PGID:-1000}
- TZ=${TZ:-America/New_York}
- PASSWORD=${CODE_SERVER_PASSWORD:-changeme}
- SUDO_PASSWORD=${CODE_SERVER_SUDO_PASSWORD:-changeme}
labels:
- "homelab.category=development"
- "homelab.description=VS Code in browser for remote development"
# GitLab CE - Self-hosted Git repository manager # GitLab CE - Self-hosted Git repository manager
# Access at: http://server-ip:8929 # Access at: http://server-ip:8929
# Note: Requires significant resources (4GB+ RAM recommended) # Note: Requires significant resources (4GB+ RAM recommended)
@@ -152,24 +129,6 @@ services:
- "homelab.category=development" - "homelab.category=development"
- "homelab.description=Jupyter Lab for data science and ML" - "homelab.description=Jupyter Lab for data science and ML"
# Node-RED - Visual programming for automation
# Access at: http://server-ip:1880
nodered:
image: nodered/node-red:3.1.3
container_name: nodered
restart: unless-stopped
networks:
- homelab-network
ports:
- "1880:1880"
volumes:
- nodered-data:/data
environment:
- TZ=${TZ:-America/New_York}
labels:
- "homelab.category=development"
- "homelab.description=Visual automation and workflow tool"
volumes: volumes:
gitlab-logs: gitlab-logs:
driver: local driver: local
@@ -181,8 +140,6 @@ volumes:
driver: local driver: local
pgadmin-data: pgadmin-data:
driver: local driver: local
nodered-data:
driver: local
networks: networks:
database-network: database-network:

View File

@@ -1,64 +1,67 @@
version: "3.9" # Downloaders Stack
# VPN-routed download clients
# Place in /opt/stacks/downloaders/docker-compose.yml
# Service Access URLs:
# - qBittorrent: https://qbit.${DOMAIN}
services: services:
# VPN client for routing download client traffic through Surfshark # Gluetun - VPN client (Surfshark)
# Routes download clients through VPN for security
gluetun: gluetun:
image: qmcgaw/gluetun:latest image: qmcgaw/gluetun:latest
container_name: gluetun container_name: gluetun
hostname: gluetun restart: unless-stopped
cap_add: cap_add:
- NET_ADMIN - NET_ADMIN
devices: devices:
- /dev/net/tun:/dev/net/tun - /dev/net/tun:/dev/net/tun
ports:
- "8081:8080" # qBittorrent WebUI
- "6881:6881" # qBittorrent torrent port
- "6881:6881/udp"
- "8888:8888/tcp" # HTTP proxy
- "8388:8388/tcp" # Shadowsocks
- "8388:8388/udp"
volumes:
- ${STACK_DIR}/gluetun:/gluetun
environment:
- VPN_SERVICE_PROVIDER=surfshark
- VPN_TYPE=openvpn
- OPENVPN_USER=${SURFSHARK_USER}
- OPENVPN_PASSWORD=${SURFSHARK_PASSWORD}
- SERVER_COUNTRIES=${VPN_COUNTRY:-Netherlands}
- FIREWALL_VPN_INPUT_PORTS=6881
- TZ=${TZ}
- UPDATER_PERIOD=24h
networks: networks:
- homelab-network - homelab-network
- traefik-network - traefik-network
ports:
- "8888:8888/tcp" # HTTP proxy
- "8388:8388/tcp" # Shadowsocks
- "8388:8388/udp" # Shadowsocks
- "8081:8080" # qBittorrent web UI
- "6881:6881" # qBittorrent
- "6881:6881/udp" # qBittorrent
volumes:
- ./gluetun:/gluetun
environment:
- VPN_SERVICE_PROVIDER=surfshark
- VPN_TYPE=openvpn
- OPENVPN_USER=${SURFSHARK_USERNAME}
- OPENVPN_PASSWORD=${SURFSHARK_PASSWORD}
- SERVER_COUNTRIES=${VPN_SERVER_COUNTRIES:-Netherlands}
- TZ=${TZ}
labels: labels:
- "homelab.category=downloaders"
- "homelab.description=VPN client for secure downloads"
- "traefik.enable=true" - "traefik.enable=true"
# qBittorrent routing through Gluetun
- "traefik.http.routers.qbittorrent.rule=Host(`qbit.${DOMAIN}`)" - "traefik.http.routers.qbittorrent.rule=Host(`qbit.${DOMAIN}`)"
- "traefik.http.routers.qbittorrent.entrypoints=websecure" - "traefik.http.routers.qbittorrent.entrypoints=websecure"
- "traefik.http.routers.qbittorrent.tls=true" - "traefik.http.routers.qbittorrent.tls=true"
- "traefik.http.routers.qbittorrent.tls.certresolver=letsencrypt"
- "traefik.http.routers.qbittorrent.middlewares=authelia@docker" - "traefik.http.routers.qbittorrent.middlewares=authelia@docker"
- "traefik.http.services.qbittorrent.loadbalancer.server.port=8080" - "traefik.http.services.qbittorrent.loadbalancer.server.port=8080"
restart: unless-stopped
# Torrent client # qBittorrent - Torrent client
# Routes through Gluetun VPN
qbittorrent: qbittorrent:
image: lscr.io/linuxserver/qbittorrent:latest image: lscr.io/linuxserver/qbittorrent:latest
container_name: qbittorrent container_name: qbittorrent
hostname: qbittorrent restart: unless-stopped
network_mode: "service:gluetun" # Route through VPN network_mode: "service:gluetun" # Routes through VPN in same compose file
volumes:
- ./qbittorrent/config:/config
- /mnt/downloads:/downloads
environment: environment:
- PUID=${PUID} - PUID=${PUID:-1000}
- PGID=${PGID} - PGID=${PGID:-1000}
- TZ=${TZ} - TZ=${TZ}
- WEBUI_PORT=8080 - WEBUI_PORT=8080
volumes:
- ${STACK_DIR}/qbittorrent/config:/config
- ${MEDIA_DIR}/downloads:/downloads
depends_on: depends_on:
- gluetun - gluetun
restart: unless-stopped
networks: networks:
homelab-network: homelab-network: