Repository navigation
v0.6.0
Applications
- MEDIA: New media stack:
- Immich — photo management
- Jellyfin — media server
- Seerr — request management for movies/TV
- DroppedNeedle (previously MusicSeerr) — request and discovery for music
- Radarr / Sonarr / Lidarr — movie/TV/music library management
- Prowlarr — indexer management
- Transmission — Torrent downloads
- slskd — SoulSeek music downloads
- Vaultwarden: Password manager
- Technitium: DNS server
- RustFS: S3 storage for Longhorn backups
Features
- Modular Stacks: IoT, Office, Bitcoin, AI, and Dev now live in separate
stacks/<name>/directories for independent management - RWX Volumes: Support for RWX (ReadWriteMany) volumes, used by Jellyfin and related components for media access
- Per-Component GPU: Set
<app>:<component>/gputonvidiaoramd - Routing Provider:
orangelab:routingProvidersetting to choosetailscaleortraefik; can also be set per-app via<app>:routingProvider - Image Overrides: Set
<app>:<component>/imageto use a custom Docker image - Exclude Node Labels: New
excludeNodeLabelsetting to keep apps off certain nodes - Bitcoin Node:
externalIpsetting to advertise the node's public IP (the node's port must be forwarded on your router) - Nextcloud: Redis for the UnifiedPush provider app
⚠️ BREAKING CHANGES & UPGRADE ACTIONS
1. Modular Stacks Migration
Media, IoT, Office, Bitcoin, AI, and Dev moved to separate stacks (stacks/<name>/). See Multi-Stack Deployment for details.
- Action: Disable these apps in your main stack, move their config to the new stack's
Pulumi.<stack>.yaml, then runpulumi upin each new stack directory.
2. MinIO Removed — Migrate to RustFS
MinIO has been removed. Use RustFS for S3-compatible storage and Longhorn backups.
- Action: Disable MinIO and Longhorn backups, enable RustFS, then re-enable Longhorn backups targeting RustFS.
3. AI GPU Config Changed
<app>:amd-gpuis replaced by<app>:gpu(set tonvidiaoramd)- Action: Update config for ollama, automatic1111, sdnext, invokeai, open-webui
4. Traefik Disabled by Default
- Action: Enable explicitly if you use custom domain ingress.
pulumi config set traefik:enabled true
pulumi up5. Storage: GPU Volume Affinity Removed
Longhorn now manages placement.
- Action: Set
requiredVolumeLabelif you need volumes on specific nodes.