From 2ead60d998d6874cb34db96a1ab44fd300117aef Mon Sep 17 00:00:00 2001 From: "Trez.One" Date: Sat, 25 Jan 2025 13:49:20 -0500 Subject: [PATCH 1/2] Initial deployment for Immich. --- docker-compose.yml | 68 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/docker-compose.yml b/docker-compose.yml index 0bf5c4e7..56e1566a 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2184,6 +2184,72 @@ services: type: bind bind: create_host_path: true + immich-server: + container_name: immich_server + depends_on: + redis: + condition: service_started + required: true + immich-pg-db: + condition: service_started + required: true + environment: + DB_DATABASE_NAME: immich + DB_USERNAME: immich + DB_PASSWORD: ${IMMICH_DB_PASSWORD} + IMMICH_TELEMETRY_INCLUDE: all + healthcheck: + disable: false + image: ghcr.io/immich-app/immich-server:release + ports: + - 2283:2283 + restart: always + volumes: + # Do not edit the next line. If you want to change the media storage location on your system, edit the value of UPLOAD_LOCATION in the .env file + - ${DOCKER_VOLUME_STORAGE}/Pics:/usr/src/app/upload + - /etc/localtime:/etc/localtime:ro + immich-machine-learning: + container_name: immich_machine_learning + depends_on: + immich-server: + condition: service_started + required: true + healthcheck: + disable: false + image: ghcr.io/immich-app/immich-machine-learning:release + restart: always + volumes: + - immich-model-cache:/cache + immich-pg-db: + command: >- + postgres + -c shared_preload_libraries=vectors.so + -c 'search_path="$$user", public, vectors' + -c logging_collector=on + -c max_wal_size=2GB + -c shared_buffers=512MB + -c wal_compression=on + container_name: immich-pg-db + environment: + POSTGRES_PASSWORD: ${JOPLIN_POSTGRES_PASSWORD} + POSTGRES_USER: immich + POSTGRES_DB: immich + expose: + - 5432 + healthcheck: + test: >- + pg_isready --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" || exit 1; + Chksum="$$(psql --dbname="$${POSTGRES_DB}" --username="$${POSTGRES_USER}" --tuples-only --no-align + --command='SELECT COALESCE(SUM(checksum_failures), 0) FROM pg_stat_database')"; + echo "checksum failure count is $$Chksum"; + [ "$$Chksum" = '0' ] || exit 1 + interval: 5m + start_interval: 30s + start_period: 5m + image: tensorchord/pgvecto-rs:pg14-v0.2.1 + restart: unless-stopped + volumes: + - ${DOCKER_VOLUME_CONFIG}/immich/db:/var/lib/postgresql/data it-tools: container_name: it-tools image: ghcr.io/corentinth/it-tools:latest @@ -7400,6 +7466,8 @@ volumes: name: hortusfox_app_themes hortusfox_db_data: name: hortusfox_db_data + immich-model-cache: + name: immich-model-cache invidious-postgres: name: invidious-postgres invoice_ninja_public: From 8e89a7cb0551815bb69e220714ad52eda8d2bc20 Mon Sep 17 00:00:00 2001 From: "Trez.One" Date: Mon, 27 Jan 2025 14:53:33 +0000 Subject: [PATCH 2/2] chore: Update README --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index 9d2578ce..522612df 100644 --- a/README.md +++ b/README.md @@ -57,6 +57,9 @@ | invidious-db | docker.io/library/postgres:14 | | invoice_ninja | invoiceninja/invoiceninja:5 | | invoice_ninja_proxy | nginx | +| immich-server | ghcr.io/immich-app/immich-server:release | +| immich-machine-learning | ghcr.io/immich-app/immich-machine-learning:release | +| immich-pg-db | tensorchord/pgvecto-rs:pg14-v0.2.1 | | it-tools | ghcr.io/corentinth/it-tools:latest | | jellyfin | jellyfin/jellyfin | | jitsi-etherpad | etherpad/etherpad:1.8.6 |