Follows the homelab pattern: ironicbadger.docker_compose_generator v2
renders services/<host>/NN-<stack>/compose.yml templates into
~/docker/compose.yaml on the host.
- 01-vllm: chat model, fixed --gpu-memory-utilization
- 02-embeddings: second vLLM instance (--task embed) rather than a
separate toolchain, so SM120 support only has to be solved once
- 03-openwebui: Open WebUI + pgvector (not chroma — corpus size)
- 99-network: shared bridge; leading comment keeps networks: top-level
- pin docker_compose_generator to 2.0.1 — galaxy tags mix v1/v2 formats
- group_vars: stack config incl. LDAP placeholders still to be filled
The role only writes the compose file; starting the stack stays manual.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- rename host/group/folder everywhere to match the server's actual
hostname and physical label
- share-analysis.ps1: sanitize the output filename prefix — '-Paths "D:"'
produced 'D:-file-types.csv' and Export-Csv failed with 'path format
not supported', so no CSVs were written
- share-analysis.ps1: new -FolderDepth so folders can be aggregated at
D:\Abteilungen\<Share> level, which matches the share layout
- list-shares.ps1: -WithSize walks local paths instead of UNC when run on
the server itself (UNC was orders of magnitude slower and looked stuck)
and prints progress every 50k files
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- sftp IP 192.168.99.68 in CLAUDE.md and server README (DMZ move)
- ansible.cfg: ansible_python_interpreter is a host var, moved to
group_vars/all.yml; [ssh_connections] -> [ssh_connection] so
pipelining actually applies
- remove playbooks/shutdown.yml (targeted nonexistent k3s_cluster group)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- hosts.ini: underscore group names, hostname aliases with ansible_host
- move ansible_user/ansible_port to group_vars/all.yml
- rename group_vars files to match underscore group names
- trim sftp group_vars to its only override (password auth off)
- run.yml: load moved secrets file (group_vars/secrets.yml)
- untrack .DS_Store, extend .gitignore
- prefill root/ansible/server READMEs, add jira + cloud server folders
- update CLAUDE.md to match
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- Rename inventory groups and group_vars to hostnames (phy-z-*)
- Add group_vars for all servers incl. planned phy-z-srv-gpu01
- Add server/ docs: sftp01, git, gpu01 (README, HW specs, assessments)
- Add rules set to CLAUDE.md
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>