immich-app / immich

High performance self-hosted photo and video management solution.
https://immich.app
GNU Affero General Public License v3.0
51.08k stars 2.7k forks source link

[BUG] iOS app 1.76.0. Local files and uploaded, always opens a copy from the server. #4083

Closed nikitafed1 closed 1 year ago

nikitafed1 commented 1 year ago

The bug

Can you please tell me why the files that are in the original on my iPhone and uploaded to the server, when I open the files from the server and not from the iPhone? As a result, I have to wait for the upload to take place. This really slows down the process of interacting with Immich. It seems illogical to me. And when there is a situation where there is no network, I can't use the app at all. I'm trying to give up Apple photos completely, but because of this limitation I can't do it completely.

Now I did an experiment: turned on air mode, opened Immich again and tried to open files (video, photos). Result: no files open (just a gray or black screen)

Here are screenshots to demonstrate this bug. Black screen when opening photos, gray screen when opening videos IMG_2602 png IMG_2603 png IMG_2604 png

In discord I described this problem to alex.tran1502 . He confirmed that it is a bug. Asked to fix the problem on github

The OS that Immich Server is running on

Sunology NAS 920+

Version of Immich Server

1.78.0

Version of Immich Mobile App

iOS 1.76.0 build 116

Platform with the issue

Your docker-compose.yml content

version: "3.9"
services:
  immich-redis:
    image: redis
    container_name: Immich-REDIS
    hostname: immich-redis
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: ["CMD-SHELL", "redis-cli ping || exit 1"]
    user: 1026:100
    environment:
      - TZ=Asia/Novosibirsk
    volumes:
      - /volume1/docker/immich/redis:/data
    restart: on-failure:5

  immich-db:
    image: postgres
    container_name: Immich-DB
    hostname: immich-db
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: ["CMD", "pg_isready", "-q", "-d", "immich", "-U", "immichuser"]
      interval: 10s
      timeout: 5s
      retries: 5
    user: 1026:100
    volumes:
      - /volume1/docker/immich/db:/var/lib/postgresql/data
    environment:
      - TZ=Europe/Bucharest
      - POSTGRES_DB=immich
      - POSTGRES_USER=immichuser
      - POSTGRES_PASSWORD=immichpw
    restart: on-failure:5

  immich-server:
    image: altran1502/immich-server:release
    command: ["start-server.sh"]
    container_name: Immich-SERVER
    hostname: immich-server
    user: 1026:100
    security_opt:
      - no-new-privileges:true
    env_file:
      - stack.env
    volumes:
      - /volume1/docker/immich/upload:/usr/src/app/upload
    restart: on-failure:5
    depends_on:
      immich-redis:
        condition: service_healthy
      immich-db:
        condition: service_started
      typesense:
        condition: service_started

  immich-microservices:
    image: altran1502/immich-server:release

    command: ["start-microservices.sh"]
    container_name: Immich-MICROSERVICES
    hostname: immich-microservices
    user: 1026:100
    security_opt:
      - no-new-privileges:true
    env_file:
      - stack.env
    volumes:
      - /volume1/docker/immich/upload:/usr/src/app/upload
      - /volume1/docker/immich/micro:/usr/src/app/.reverse-geocoding-dump
    restart: on-failure:5
    depends_on:
      immich-redis:
        condition: service_healthy
      immich-db:
        condition: service_started
      typesense:
        condition: service_started

  immich-machine-learning:
    image: altran1502/immich-machine-learning:release
    container_name: Immich-LEARNING
    hostname: immich-machine-learning
    user: 1026:100
    security_opt:
      - no-new-privileges:true
    env_file:
      - stack.env
    volumes:
      - /volume1/docker/immich/upload:/usr/src/app/upload
      - /volume1/docker/immich/cache:/cache
    restart: on-failure:5
    depends_on:
      immich-db:
        condition: service_started

  immich-web:
    image: altran1502/immich-web:release
    container_name: Immich-WEB
    hostname: immich-web
    user: 1026:100
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: wget --no-verbose --tries=1 --spider http://localhost:3000/ || exit 1
    env_file:
      - stack.env
    restart: on-failure:5
    depends_on:
      - immich-server

  immich-proxy:
    image: altran1502/immich-proxy:release
    logging:
      driver: none
    container_name: Immich-PROXY
    hostname: immich-proxy
    security_opt:
      - no-new-privileges:true
    healthcheck:
      test: curl -f http://localhost:8080/ || exit 1
    environment:
      - IMMICH_SERVER_URL=http://immich-server:3001
      - IMMICH_WEB_URL=http://immich-web:3000
    ports:
      - 8212:8080
    restart: on-failure:5
    depends_on:
      - immich-server

  typesense:
    container_name: Immich-TYPESENSE
    image: typesense/typesense:0.25.0
    environment:
      - TYPESENSE_API_KEY=MariushostingMariushostingMari13
      - TYPESENSE_DATA_DIR=/data
    logging:
      driver: none
    volumes:
      - /volume1/docker/immich/typesense:/data
    restart: on-failure:5

Your .env content

NODE_ENV=production
TZ=Asia/Novosibirsk
TYPESENSE_API_KEY=MariushostingMariushostingMari13
DB_HOSTNAME=immich-db
DB_USERNAME=immichuser
DB_PASSWORD=immichpw
DB_DATABASE_NAME=immich
REDIS_HOSTNAME=immich-redis
LOG_LEVEL=simple
JWT_SECRET= (delete)
DISABLE_REVERSE_GEOCODING=false
REVERSE_GEOCODING_PRECISION=3
PUBLIC_LOGIN_PAGE_MESSAGE=
IMMICH_WEB_URL=http://immich-web:3000
IMMICH_SERVER_URL=http://immich-server:3001
IMMICH_MACHINE_LEARNING_URL=http://immich-machine-learning:3003

Reproduction steps

1. The original files are on the iphone and uploaded to the immich server. The files have a cloud icon and a check mark next to them
2. I turn on airplane mode
3. I try to open the files, the result: nothing happens (gray or black screen)

Additional information

No response

alextran1502 commented 1 year ago

I believe this issue has been fixed