docker-compose.artwork-local.yml
Rama main · réplica de lectura del repositorio original.
# SD.Next only — Windows GPU box (RTX 2080), not the NAS, not the full stack.
#
# The Unraid/NAS Compose file never requests a GPU. This file is the workstation
# sidecar: generate covers / icon-pack drawings here, then copy results into the
# repo or point the NAS app at this host with AI_ARTWORK_URL.
#
# Prerequisites (Docker Desktop + NVIDIA Container Toolkit / WSL2 GPU):
# docker run --rm --gpus all nvidia/cuda:12.4.0-base-ubuntu22.04 nvidia-smi
#
# Start (from this directory, on the GPU machine only):
# docker compose -f docker-compose.artwork-local.yml up -d
#
# Then either:
# - generate in the SD.Next UI at http://127.0.0.1:7860
# - or on the NAS .env: AI_ARTWORK_URL=http://<this-pc-lan-ip>:7860
#
# SD.Next has NO login, and anyone who can reach its port can queue generation
# jobs on this GPU. So the port is published on loopback only by default. The
# NAS route needs one explicit opt-in on THIS machine, set before `up -d`:
# SDNEXT_HOST_BIND=<this-pc-lan-ip> (preferred: only that adapter)
# SDNEXT_HOST_BIND=0.0.0.0 (every adapter, VPN included)
# in the shell or in the .env next to this file, then recreate the container.
# Scope the Windows Firewall rule for TCP 7860 to the NAS's address, not Any.
# See docs/runbooks/artwork-gpu-workstation.md.
#
# Stop: docker compose -f docker-compose.artwork-local.yml down
services:
sdnext:
image: ${SDNEXT_IMAGE:-saladtechnologies/sdnext:latest}
container_name: oneirodex-sdnext-local
restart: unless-stopped
environment:
- SD_NOHASHING=true
command:
- --listen
- --no-download
- --docs
- --skip-requirements
- --skip-extensions
- --skip-git
- --skip-torch
- --quick
volumes:
- sdnext_models:/webui/data/models
- sdnext_outputs:/webui/outputs
ports:
# Loopback unless SDNEXT_HOST_BIND says otherwise (see the header).
- "${SDNEXT_HOST_BIND:-127.0.0.1}:${SDNEXT_HOST_PORT:-7860}:7860"
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
healthcheck:
test: ['CMD', 'wget', '-q', '-O', '/dev/null', 'http://localhost:7860/sdapi/v1/sd-models']
interval: 30s
timeout: 10s
retries: 3
volumes:
sdnext_models:
sdnext_outputs: