Files
Panama/server/home/OpenWebUI/compose.yml
T
Gabriel Brown 913a57f8a6 Snapshot both servers: the VPS catalog moves to server/vps, the home server joins as server/home
The catalog in server/containers had drifted from the VPS. Eleven compose
files and twelve units no longer matched what runs, and two running
services, Gbrown_Agent and BillTracker, were missing. server/vps is now a
copy of the live files, and panama-server reads from it.

server/home holds the home server's services in the same shape. They still
run under Docker, so the podman units there are drafts for a later move, and
nothing installs from that tree. PostHog, Sentry and Plausible are checkouts
of upstream repositories. Only their local files are kept, next to an
UPSTREAM file naming the repository and the exact commit.

Every secret in both trees is a ${VAR} reference named in .env.example, or
CHANGE_ME in files that are not compose files. The live servers still hold
some of those values inline, so a live file can differ from its copy on
those lines alone. Existing .env.example files keep their comments, with new
keys appended at the end.

The ignore rules and the secrets contract now cover both trees, plus the
volume/ and volumes/ directories the home server uses.
2026-10-06 10:52:47 -04:00

147 lines
4.1 KiB
YAML

networks:
nginx-bridge:
external: true
services:
openwebui:
image: ghcr.io/open-webui/open-webui:main
#image: ghcr.io/open-webui/open-webui:ollama
container_name: openwebui
hostname: openwebui
domainname: chat.gbrown.org
networks:
- nginx-bridge
#ports:
#- 8080:8080
environment:
- WEBUI_NAME=Gib's Chat
- WEBUI_URL=https://chat.gbrown.org
- OLLAMA_BASE_URL=http://ollama:11434
- [email protected]
- DEFAULT_MODELS=llama3.1
- TASK_MODEL=llama3.1
- ENABLE_AUTOCOMPLETE_GENERATION=false
- OPENAI_API_KEY=${OPENAI_API_KEY}
- AUTOMATIC1111_BASE_URL=http://192.168.0.43:7860
- COMFYUI_BASE_URL=http://comfyui:8188
- WHISPER_MODEL_AUTO_UPDATE=True
- PDF_EXTRACT_IMAGES=True
- ENABLE_RAG_WEB_SEARCH=True
- RAG_WEB_SEARCH_ENGINE=searxng
- SEARXNG_QUERY_URL=https://search.gbrown.org/search?q=<query>
- ENABLE_IMAGE_GENERATION=True
- IMAGE_GENERATION_ENGINE=ComfyUI
- IMAGE_SIZE=1216x832
#- USE_OLLAMA_DOCKER=True
#- USE_CUDA_DOCKER=True
- DO_NOT_TRACK=True
- ENABLE_OAUTH_SIGNUP=true
- OAUTH_MERGE_ACCOUNTS_BY_EMAIL=true
#- ENABLE_OAUTH_ROLE_MANAGEMENT=true
#- OAUTH_ADMIN_ROLES=admin,internal,superuser
- OAUTH_CLIENT_ID=${OAUTH_CLIENT_ID}
- OAUTH_CLIENT_SECRET=${OAUTH_CLIENT_SECRET}
- OPENID_PROVIDER_URL=https://auth.gbrown.org/application/o/openwebui/.well-known/openid-configuration
- OPENID_REDIRECT_URI=https://chat.gbrown.org/oauth/oidc/callback
- OAUTH_PROVIDER_NAME=Gib's Auth
labels:
com.centurylinklabs.watchtower.enable: "true"
volumes:
- ./volumes/openwebui:/app/backend/data
#- /home/gib/Public/Server_Backup/Ollama_Models:/root/.ollama
#devices:
#- /dev/dri:/dev/dri
tty: true
restart: unless-stopped
#security_opt: ['seccomp:unconfined','label:disable']
#deploy:
#resources:
#reservations:
#devices:
#- driver: nvidia
#count: 1
#capabilities: [gpu]
ollama:
#image: ollama/ollama:rocm
image: ollama/ollama:latest
container_name: ollama
hostname: ollama
domainname: ollama.gbrown.org
networks:
- nginx-bridge
labels:
com.centurylinklabs.watchtower.enable: "true"
ports:
- 11434:11434
volumes:
- /home/gib/Public/Server_Backup/Ollama_Models:/root/.ollama
devices:
- /dev/dri:/dev/dri
tty: true
restart: unless-stopped
security_opt: ["seccomp:unconfined", "label:disable"]
runtime: nvidia
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
comfyui:
#image: yanwk/comfyui-boot:rocm
image: yanwk/comfyui-boot:cu128-megapak
init: true
container_name: comfyui
hostname: comfyui
domainname: comfyui.gbrown.org
networks:
- nginx-bridge
labels:
com.centurylinklabs.watchtower.enable: "true"
#ports: [8188:8188]
volumes:
- /home/gib/Public/Server_Backup/ComfyUI/:/root
#environment:
#- HSA_OVERRIDE_GFX_VERSION=11.0.0
#- CLI_ARGS=''
devices:
- /dev/dri:/dev/dri
#- /dev/kfd:/dev/kfd
tty: true
security_opt: ["seccomp:unconfined", "label:disable"]
restart: unless-stopped
group_add: [video]
#cap_add: [SYS_PTRACE]
runtime: nvidia
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]
mcpo:
image: ghcr.io/open-webui/mcpo:main
container_name: mcpo
hostname: mcpo.gbrown.org
domainname: mcpo.gbrown.org
command: 'mcpo --port 8010 --config /app/config.json --api-key "Tragedy8-Unfazed-Craftily-Hedging-Gem-Velcro"'
restart: unless-stopped
tty: true
networks:
- nginx-bridge
ports:
- 8010:8010
labels:
com.centurylinklabs.watchtower.enable: "true"
env_file:
- .env
volumes:
- ./volumes/mcpo/openapi.json:/app/config.json
- ./volumes/mcpo/bin/gitea-mcp:/usr/local/bin/gitea-mcp
- ./volumes/mcpo/bin/bw:/usr/local/bin/bw