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