Skip to content

Immich installation fails with incorrect database configuration #12

Description

@GRiM-UK

Bug Report: Immich installation fails with incorrect database configuration

Summary

Installing Immich through HomeDock OS results in Immich repeatedly failing to start. The application retries multiple times and never becomes available.

The HomeDock-generated Immich configuration appears to have two compatibility issues:

  1. PostgreSQL and Redis were configured using the host's public IP address instead of Docker-internal service names.
  2. The PostgreSQL container used an outdated pgvecto.rs image that was incompatible with the current Immich version.

Environment

  • HomeDock OS
  • Windows host
  • Immich installed through the HomeDock App Store
  • Fresh Immich installation
  • No existing Immich data

Issue 1 — Incorrect database and Redis hostnames

The generated configuration used the host's public IP address for both:

DB_HOSTNAME: <PUBLIC_IP>
REDIS_HOSTNAME: <PUBLIC_IP>

The Immich, PostgreSQL and Redis containers were all attached to the same Docker network.

As a result, Immich initially failed with:

Error: write CONNECT_TIMEOUT <PUBLIC_IP>:5432

Changing the configuration to use the Docker service names fixed the connection problem:

DB_HOSTNAME: postgres15
REDIS_HOSTNAME: redis

Issue 2 — Outdated PostgreSQL image

After correcting the database hostname, Immich was able to connect to PostgreSQL but then repeatedly crashed with:

Error: No vector extension found. Available extensions: vchord, vector

The HomeDock template was using:

image: tensorchord/pgvecto-rs:pg15-v0.2.0

This PostgreSQL image did not provide the vector extension required by the current Immich version.

Replacing it with the current Immich-compatible PostgreSQL/VectorChord image resolved the issue.

Working configuration

The database and Redis hostnames were changed to:

DB_HOSTNAME: postgres15
REDIS_HOSTNAME: redis

The PostgreSQL image was changed from the outdated pgvecto.rs image to the current Immich-compatible PostgreSQL/VectorChord image.

After using SAVE AND RECREATE, Immich started successfully.

Expected behaviour

A fresh Immich installation from the HomeDock App Store should generate a configuration compatible with the current Immich release, including:

  • Correct Docker-internal PostgreSQL hostname
  • Correct Docker-internal Redis hostname
  • Current Immich-compatible PostgreSQL/vector database image

No manual modification of the generated configuration should be necessary.

Actual behaviour

A fresh installation failed to start because:

  1. Immich was initially configured to reach PostgreSQL and Redis through the host's public IP instead of Docker-internal service names.
  2. After correcting that, Immich failed because the PostgreSQL image did not provide the required vchord or vector extension.

Suggested fix

Please review and update the Immich HomeDock App Store template to:

  1. Use Docker service names for communication between the Immich containers.
  2. Use the current PostgreSQL image recommended/supported by Immich.
  3. Verify the template against the current Immich release before publishing it.

This issue was reproduced on a fresh installation with no existing Immich data.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions