immich becomes a manifest-driven stack (the legacy install_immich_stack — hardcoded podman run + sudo chown — is the anti-pattern being retired). Three image-only manifests modelled on the btcpay stack + the live .228 container config: - immich-postgres / immich-redis / immich-server on archy-net; container_name set to the underscore form (immich_postgres/_redis/_server) so the server's DB_HOSTNAME/REDIS_HOSTNAME aliases resolve. - generated_secrets: [immich-db-password] (idempotent — reuses the live secret on existing nodes; postgres is already initialised with it). - server depends on postgres+redis (install ordering); upload bind preserved. Inert for now: not added to the UI catalog and install_immich_stack still the default, so nothing installs these until the orchestrator wiring + on-node ownership (data_uid) validation lands. Schema validated by the all-manifests round-trip test. See docs/PRODUCTION-MASTER-PLAN.md §6. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
38 lines
694 B
YAML
38 lines
694 B
YAML
app:
|
|
id: immich-redis
|
|
name: Immich Redis
|
|
version: "7-alpine"
|
|
description: Valkey (Redis-compatible) cache for Immich.
|
|
|
|
# Immich server connects via REDIS_HOSTNAME=immich_redis — alias must match.
|
|
extensions:
|
|
container_name: immich_redis
|
|
|
|
container:
|
|
image: 146.59.87.168:3000/lfg2025/valkey:7-alpine
|
|
pull_policy: if-not-present
|
|
network: archy-net
|
|
|
|
dependencies: []
|
|
|
|
resources:
|
|
memory_limit: 128Mi
|
|
|
|
security:
|
|
capabilities: [SETGID, SETUID]
|
|
readonly_root: false
|
|
network_policy: isolated
|
|
|
|
ports: []
|
|
|
|
volumes: []
|
|
|
|
environment: []
|
|
|
|
health_check:
|
|
type: tcp
|
|
endpoint: localhost:6379
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|