removed unused services
Some checks failed
Auto-Deploy Changed Stacks / deploy (push) Failing after 3s
Some checks failed
Auto-Deploy Changed Stacks / deploy (push) Failing after 3s
This commit is contained in:
parent
008fb39707
commit
76196e6f48
@ -1,25 +0,0 @@
|
||||
name: homelab-registry-mcp
|
||||
services:
|
||||
registry-mcp:
|
||||
image: registry.castaldifamily.com/homelab-registry-mcp:latest
|
||||
container_name: homelab-registry-mcp
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- registry-data:/data
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
networks:
|
||||
- proxy-net
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.registry-mcp.rule=Host(`registry-mcp.castaldifamily.com`)"
|
||||
- "traefik.http.routers.registry-mcp.entrypoints=websecure"
|
||||
- "traefik.http.routers.registry-mcp.tls=true"
|
||||
- "traefik.http.routers.registry-mcp.tls.certresolver=cloudflare"
|
||||
- "traefik.http.services.registry-mcp.loadbalancer.server.port=8765"
|
||||
|
||||
volumes:
|
||||
registry-data:
|
||||
|
||||
networks:
|
||||
proxy-net:
|
||||
external: true
|
||||
@ -1,141 +0,0 @@
|
||||
networks:
|
||||
proxy-net:
|
||||
external: true
|
||||
recipesage-internal:
|
||||
internal: true
|
||||
|
||||
services:
|
||||
proxy:
|
||||
image: julianpoy/recipesage-selfhost-proxy:v4.0.0
|
||||
container_name: recipesage_proxy
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- proxy-net
|
||||
- recipesage-internal
|
||||
depends_on:
|
||||
static:
|
||||
condition: service_started
|
||||
api:
|
||||
condition: service_started
|
||||
pushpin:
|
||||
condition: service_started
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.docker.network=proxy-net"
|
||||
|
||||
# --- 1. Authenticated Router (Priority 10) ---
|
||||
- "traefik.http.routers.recipesage.rule=Host(`${DOMAIN_NAME}`)"
|
||||
- "traefik.http.routers.recipesage.entrypoints=websecure"
|
||||
- "traefik.http.routers.recipesage.tls=true"
|
||||
- "traefik.http.routers.recipesage.tls.certresolver=cloudflare"
|
||||
# - "traefik.http.routers.recipesage.middlewares=authentik-auth@file"
|
||||
- "traefik.http.routers.recipesage.priority=10"
|
||||
- "traefik.http.routers.recipesage.service=recipesage-svc"
|
||||
|
||||
# --- 2. Public Share Bypass Router (Priority 20) ---
|
||||
- "traefik.http.routers.recipesage-public.rule=Host(`${DOMAIN_NAME}`) && (PathPrefix(`/share`) || PathPrefix(`/p/`) || PathPrefix(`/api/v1/share`) || PathPrefix(`/assets/`))"
|
||||
- "traefik.http.routers.recipesage-public.entrypoints=websecure"
|
||||
- "traefik.http.routers.recipesage-public.tls=true"
|
||||
- "traefik.http.routers.recipesage-public.tls.certresolver=cloudflare"
|
||||
- "traefik.http.routers.recipesage-public.priority=20"
|
||||
- "traefik.http.routers.recipesage-public.service=recipesage-svc"
|
||||
|
||||
# --- Service Target Port ---
|
||||
- "traefik.http.services.recipesage-svc.loadbalancer.server.port=80"
|
||||
|
||||
api:
|
||||
image: julianpoy/recipesage-selfhost:api-v3.0.10
|
||||
container_name: recipesage_api
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- recipesage-internal
|
||||
depends_on:
|
||||
postgres:
|
||||
condition: service_healthy
|
||||
typesense:
|
||||
condition: service_started
|
||||
pushpin:
|
||||
condition: service_started
|
||||
browserless:
|
||||
condition: service_started
|
||||
command: sh -c "npx prisma migrate deploy; npx nx seed prisma; npx ts-node --swc --project packages/backend/tsconfig.json packages/backend/src/bin/www"
|
||||
environment:
|
||||
- STORAGE_TYPE=filesystem
|
||||
- FILESYSTEM_STORAGE_PATH=/rs-media
|
||||
- NODE_ENV=selfhost
|
||||
- VERBOSE=false
|
||||
- VERSION=selfhost
|
||||
- POSTGRES_DB=${POSTGRES_DB}
|
||||
- POSTGRES_USER=${POSTGRES_USER}
|
||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||
- POSTGRES_PORT=5432
|
||||
- POSTGRES_HOST=postgres
|
||||
- POSTGRES_SSL=false
|
||||
- POSTGRES_LOGGING=false
|
||||
- DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres:5432/${POSTGRES_DB}?schema=public
|
||||
- JWT_SECRET=${JWT_SECRET}
|
||||
- DISABLE_REGISTRATION=${DISABLE_REGISTRATION}
|
||||
- GRIP_URL=http://pushpin:5561/
|
||||
- GRIP_KEY=changeme
|
||||
- SEARCH_PROVIDER=typesense
|
||||
- 'TYPESENSE_NODES=[{"host": "typesense", "port": 8108, "protocol": "http"}]'
|
||||
- TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
|
||||
- BROWSERLESS_URL=http://browserless:3000
|
||||
- PUSHPIN_URL=http://pushpin:7999
|
||||
- OPENAI_API_KEY=${OPENAI_API_KEY:-}
|
||||
- OPENAI_API_BASE_URL=${OPENAI_API_BASE_URL:-}
|
||||
volumes:
|
||||
- /mnt/appdata/recipesage/data/uploads:/rs-media
|
||||
|
||||
static:
|
||||
image: julianpoy/recipesage-selfhost:static-v3.0.10
|
||||
container_name: recipesage_static
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- recipesage-internal
|
||||
|
||||
typesense:
|
||||
image: typesense/typesense:26.0
|
||||
container_name: recipesage_typesense
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- recipesage-internal
|
||||
environment:
|
||||
- TYPESENSE_API_KEY=${TYPESENSE_API_KEY}
|
||||
- TYPESENSE_DATA_DIR=/usr/share/typesense/data
|
||||
volumes:
|
||||
- /mnt/appdata/recipesage/data/typesense:/usr/share/typesense/data
|
||||
|
||||
pushpin:
|
||||
image: fanout/pushpin:1.37.0
|
||||
container_name: recipesage_pushpin
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- recipesage-internal
|
||||
|
||||
browserless:
|
||||
image: ghcr.io/browserless/chromium:latest
|
||||
container_name: recipesage_browserless
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- recipesage-internal
|
||||
environment:
|
||||
- MAX_CONCURRENT_SESSIONS=5
|
||||
|
||||
postgres:
|
||||
image: postgres:15-alpine
|
||||
container_name: recipesage_postgres
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- recipesage-internal
|
||||
environment:
|
||||
- POSTGRES_DB=${POSTGRES_DB}
|
||||
- POSTGRES_USER=${POSTGRES_USER}
|
||||
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
|
||||
volumes:
|
||||
- /mnt/appdata/recipesage/data/postgres:/var/lib/postgresql/data
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"]
|
||||
interval: 5s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
@ -1,21 +0,0 @@
|
||||
# Watchtower
|
||||
|
||||
> **Primary Services:** Komodo Periphery
|
||||
> **IP Address:** 10.0.0.200
|
||||
|
||||
## Hardware Specifications
|
||||
|
||||
| Component | Details |
|
||||
|-----------|--------|
|
||||
| **Platform** | Raspberry Pi 5 |
|
||||
| **CPU** | ARM Cortex-A76 (4 cores, aarch64) |
|
||||
| **Memory** | 16 GB |
|
||||
| **Storage** | 32 GB microSD (mmcblk0) |
|
||||
| **Operating System** | Debian GNU/Linux 13 (Trixie) |
|
||||
| **Kernel** | 6.12.75+rpt-rpi-2712 |
|
||||
| **Network** | 10.0.0.200 (primary), Docker networks |
|
||||
| **Additional IPs** | 10.0.0.80, 10.0.0.79 |
|
||||
|
||||
## Role
|
||||
|
||||
Periphery node for Komodo distributed container management.
|
||||
@ -1,85 +0,0 @@
|
||||
name: node-tools
|
||||
services:
|
||||
# 🔒 Local Security Layer for this Node
|
||||
docker-socket-proxy:
|
||||
image: tecnativa/docker-socket-proxy:latest
|
||||
container_name: docker-socket-proxy
|
||||
userns_mode: "host"
|
||||
user: "0:0"
|
||||
security_opt:
|
||||
- apparmor=unconfined
|
||||
privileged: true
|
||||
networks:
|
||||
- node-net
|
||||
ports:
|
||||
- "127.0.0.1:2375:2375" # Expose on localhost for host-mode periphery
|
||||
group_add:
|
||||
- "988"
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock:ro
|
||||
environment:
|
||||
- CONTAINERS=1
|
||||
- NETWORKS=1
|
||||
- IMAGES=1
|
||||
- INFO=1
|
||||
- POST=1
|
||||
- ALLOW_START=1
|
||||
- ALLOW_STOP=1
|
||||
# Added for Stack Management
|
||||
- SERVICES=1 # Required for stack/service operations
|
||||
- TASKS=1 # Required for stack task management
|
||||
- VOLUMES=1 # Required if stacks use volumes
|
||||
- CONFIGS=1 # Required for Docker configs
|
||||
- SECRETS=1 # Required for Docker secrets
|
||||
|
||||
# 🦎 Komodo Periphery
|
||||
periphery:
|
||||
image: ghcr.io/moghtech/komodo-periphery:2
|
||||
container_name: komodo-perihery-watchtower
|
||||
network_mode: host # Use host networking to access external IPs
|
||||
depends_on:
|
||||
- docker-socket-proxy
|
||||
environment:
|
||||
- DOCKER_HOST=tcp://127.0.0.1:2375 # Access via localhost
|
||||
- PERIPHERY_CORE_ADDRESS=ws://10.0.0.151:9120
|
||||
- PERIPHERY_CONNECT_AS=Watchtower
|
||||
- PERIPHERY_ONBOARDING_KEY=O_VegHtPxiQKrzsAd8MqlrJEs2WLxZ_O
|
||||
volumes:
|
||||
- /proc:/proc
|
||||
- /mnt/appdata/komodo/watchtower/keys:/config/keys
|
||||
- /mnt/appdata/komodo/watchtower/work:/etc/komodo
|
||||
# ✅ Added for Stack Deployments
|
||||
- /mnt/appdata/komodo/watchtower/stacks:/etc/komodo/stacks
|
||||
# ✅ Added for Git-linked Stacks
|
||||
- /mnt/appdata/komodo/watchtower/repos:/etc/komodo/repos
|
||||
|
||||
# 🔍 Traefik-KOP (Kubernetes Operator for Traefik Discovery)
|
||||
traefik-kop:
|
||||
image: ghcr.io/jittering/traefik-kop:0.19.4
|
||||
container_name: traefik-kop
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
- docker-socket-proxy
|
||||
networks:
|
||||
- node-net
|
||||
environment:
|
||||
- DOCKER_HOST=tcp://docker-socket-proxy:2375
|
||||
- REDIS_ADDR=10.0.0.151:6379
|
||||
- BIND_IP=10.0.0.200
|
||||
- KOP_HOSTNAME=watchtower
|
||||
# Optional: Enable debug logging
|
||||
# - VERBOSE=true
|
||||
|
||||
# 📜 Dozzle Agent
|
||||
# dozzle:
|
||||
# image: amir20/dozzle:latest
|
||||
# depends_on:
|
||||
# - docker-socket-proxy
|
||||
# networks:
|
||||
# - node-net
|
||||
# environment:
|
||||
# - DOCKER_HOST=tcp://docker-socket-proxy:2375
|
||||
|
||||
networks:
|
||||
node-net:
|
||||
driver: bridge
|
||||
Loading…
x
Reference in New Issue
Block a user