immich server

Self-hosted photo and video management solution

run

install

create docker-compose.yaml and run docker compose pull && docker compose up -d

web interface ???
docker pull ghcr.io/immich-app/immich-web:main

stop container

docker compose down

immich.json

add this to the docker-compose.yaml

    volumes:
      - ./immich.json:/usr/src/app/immich.json:ro

access postresql db

add this to the docker-compose.yaml

database:
    container_name: immich_postgres
  ...
  ports:
      - "5432:5432"  # 👈 Expose container port 5432 on host's port 5432

upgrade

run docker compose pull && docker compose up -d

clean up unused Docker images

docker image prune

logs

docker logs -f immich_server

.env

# You can find documentation for all the supported env variables at https://immich.app/docs/install/environment-variables

# The location where your uploaded files are stored
# UPLOAD_LOCATION=./library
UPLOAD_LOCATION=/mnt/asus1tb/immich_lib
# The location where your database files are stored
DB_DATA_LOCATION=./postgres

IMMICH_CONFIG_FILE=./immich.json

# To set a timezone, uncomment the next line and change Etc/UTC to a TZ identifier from this list: https://en.wikipedia.org/wiki/List_of_tz_database_time_zones#List
# TZ=Etc/UTC
TZ=Europe/Berlin

# The Immich version to use. You can pin this to a specific version like "v1.71.0"
#IMMICH_VERSION=release
# https://github.com/immich-app/immich/discussions/10566
#IMMICH_VERSION=v1.111.0
IMMICH_VERSION=v1.131.3

# Connection secret for postgres. You should change it to a random password
DB_PASSWORD=postgres

# The values below this line do not need to be changed
###################################################################################
DB_USERNAME=postgres
DB_DATABASE_NAME=immich