iOS app doesn't show local images #8247

Closed
opened 2026-02-05 13:37:15 +03:00 by OVERLORD · 1 comment
Owner

Originally created by @samunwin on GitHub (Jan 13, 2026).

I have searched the existing issues, both open and closed, to make sure this is not a duplicate report.

  • Yes

The bug

Opening the iOS Immich app after upgrading to iOS 26.2 doesn't show local content that hasn't yet been backed up to the Immich server.

This occurs on an iPhone, but does not occur on an iPad on the same version of iOS, and I'm unable to trigger it into happening.

Logging into another Immich account on the same server, on the problem iPhone, produces the same result - unable to see local content.

The OS that Immich Server is running on

Docker / macOS 26

Version of Immich Server

v2.4.1

Version of Immich Mobile App

v2.4.1 build.239

Platform with the issue

  • Server
  • Web
  • Mobile

Device make and model

iPhone 15 Pro - iOS 26.2

Your docker-compose.yml content

#
# WARNING: Make sure to use the docker-compose.yml of the current release:
#
# https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml

#
# The compose file on main may not be compatible with the latest release.
#

name: immich

services:
  immich-server:
    container_name: immich_server
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release
}
    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
      - ${UPLOAD_LOCATION}:/data
      - /etc/localtime:/etc/localtime
    env_file:
      - .env
    ports:
      - "2283:2283"
    depends_on:
      - redis
      - database
    restart: always
    healthcheck:
      disable: false
    deploy:
      resources:
        limits:
          memory: 5G
          cpus: 4
    networks:
      - external-network

  immich-machine-learning:
    container_name: immich_machine_learning
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release
}
    volumes:
      - model-cache:/cache
    env_file:
      - .env
    restart: always
    healthcheck:
      disable: false
    networks:
      - external-network

  redis:
    container_name: immich_redis
    image: docker.io/valkey/valkey:8-bookworm@sha256:facc1d2c3462975c34e10fccb167bfa92b0e0dbd992fc282c29a61c3243afb11
    healthcheck:
      test: redis-cli ping || exit 1
    restart: always
    deploy:
      resources:
        limits:
          memory: 256M
    networks:
      - external-network

  database:
    container_name: immich_postgres
    image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:32324a2f41df5de9efe1af166b7008c3f55646f8d0e00d9550c16c9822366b4a
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
      POSTGRES_INITDB_ARGS: "--data-checksums"
    volumes:
      # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file
      - ${DB_DATA_LOCATION}:/var/lib/postgresql/data
    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
    shm_size: 128mb
    restart: always
    deploy:
      resources:
        limits:
          memory: 512M
    networks:
      - external-network

volumes:
  model-cache:

networks:
  external-network:
    external: true

Your .env content

# 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=/mediamount
# The location where your database files are stored
DB_DATA_LOCATION=/mediamount

# 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=Europe/London

# The Immich version to use. You can pin this to a specific version like "v1.71.0"
IMMICH_VERSION=release

# Connection secret for postgres. You should change it to a random password
# Please use only the characters A-Za-z0-9, without special characters or spaces
DB_PASSWORD=postgres

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

Reproduction steps

  1. Open Immich app with media not uploaded to Immich server
  2. Observe no local content from iPhone in the timeline

Relevant log output


Additional information

Things attempted to resolve:

  • Logged out and logged in again
  • Deleted the app and reinstalled
  • Rebooted iPhone
  • Changed app permissions to disallow photos and then allow all photos again
Originally created by @samunwin on GitHub (Jan 13, 2026). ### I have searched the existing issues, both open and closed, to make sure this is not a duplicate report. - [x] Yes ### The bug Opening the iOS Immich app after upgrading to iOS 26.2 doesn't show local content that hasn't yet been backed up to the Immich server. This occurs on an iPhone, but does not occur on an iPad on the same version of iOS, and I'm unable to trigger it into happening. Logging into another Immich account on the same server, on the problem iPhone, produces the same result - unable to see local content. ### The OS that Immich Server is running on Docker / macOS 26 ### Version of Immich Server v2.4.1 ### Version of Immich Mobile App v2.4.1 build.239 ### Platform with the issue - [ ] Server - [ ] Web - [x] Mobile ### Device make and model iPhone 15 Pro - iOS 26.2 ### Your docker-compose.yml content ```YAML # # WARNING: Make sure to use the docker-compose.yml of the current release: # # https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml # # The compose file on main may not be compatible with the latest release. # name: immich services: immich-server: container_name: immich_server image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release } 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 - ${UPLOAD_LOCATION}:/data - /etc/localtime:/etc/localtime env_file: - .env ports: - "2283:2283" depends_on: - redis - database restart: always healthcheck: disable: false deploy: resources: limits: memory: 5G cpus: 4 networks: - external-network immich-machine-learning: container_name: immich_machine_learning image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release } volumes: - model-cache:/cache env_file: - .env restart: always healthcheck: disable: false networks: - external-network redis: container_name: immich_redis image: docker.io/valkey/valkey:8-bookworm@sha256:facc1d2c3462975c34e10fccb167bfa92b0e0dbd992fc282c29a61c3243afb11 healthcheck: test: redis-cli ping || exit 1 restart: always deploy: resources: limits: memory: 256M networks: - external-network database: container_name: immich_postgres image: ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0@sha256:32324a2f41df5de9efe1af166b7008c3f55646f8d0e00d9550c16c9822366b4a environment: POSTGRES_PASSWORD: ${DB_PASSWORD} POSTGRES_USER: ${DB_USERNAME} POSTGRES_DB: ${DB_DATABASE_NAME} POSTGRES_INITDB_ARGS: "--data-checksums" volumes: # Do not edit the next line. If you want to change the database storage location on your system, edit the value of DB_DATA_LOCATION in the .env file - ${DB_DATA_LOCATION}:/var/lib/postgresql/data 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 shm_size: 128mb restart: always deploy: resources: limits: memory: 512M networks: - external-network volumes: model-cache: networks: external-network: external: true ``` ### Your .env content ```Shell # 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=/mediamount # The location where your database files are stored DB_DATA_LOCATION=/mediamount # 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=Europe/London # The Immich version to use. You can pin this to a specific version like "v1.71.0" IMMICH_VERSION=release # Connection secret for postgres. You should change it to a random password # Please use only the characters A-Za-z0-9, without special characters or spaces DB_PASSWORD=postgres # The values below this line do not need to be changed ################################################################################### DB_USERNAME=postgres DB_DATABASE_NAME=immich ``` ### Reproduction steps 1. Open Immich app with media _not_ uploaded to Immich server 2. Observe no local content from iPhone in the timeline ### Relevant log output ```shell ``` ### Additional information Things attempted to resolve: - Logged out and logged in again - Deleted the app and reinstalled - Rebooted iPhone - Changed app permissions to disallow photos and then allow all photos again
Author
Owner

@alextran1502 commented on GitHub (Jan 13, 2026):

Did you choose any album for backup on this device?

@alextran1502 commented on GitHub (Jan 13, 2026): Did you choose any album for backup on this device?
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#8247