Immich android re-uploads files after docker restart

anytimesoon@feddit.uk to Selfhosted@lemmy.world – 18 points –

Hello,

I've noticed that when I restart my docker compose stack, the app seems to think that the server doesn't have copies of the latest files and re-uploads them.

The files can be seen in the filesystem of the host, but not through the web interface until they have been re-uploaded. The app uploads duplicates of all the files, at which point the web can see them again, and the fs has duplicates of everything.

This happens when I restart the stack, no upgrades to the system, just docker compose down and docker compose up -d

My set up is using an unmodified compose file from the docs. Any ideas what I could be doing wrong?

18

You are viewing a single comment

The volume is defined like this at the end of the compose file

database:
    container_name: immich_postgres
    image: registry.hub.docker.com/tensorchord/pgvecto-rs:pg14-v0.2.0@sha256:90724186f0a3517cf6914295b5ab410db9ce23190a2d9d0b9dd6463e3fa298f0
    environment:
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_USER: ${DB_USERNAME}
      POSTGRES_DB: ${DB_DATABASE_NAME}
    volumes:
      - pgdata:/var/lib/postgresql/data
    restart: always

volumes:
  pgdata:
  model-cache:

Yeah that looks fine, odd.

I assume this is a pretty normal install of Ubuntu, and /var/lib/docker hasn't been messed with at all?

That's correct. Ubuntu is basically just a platform to run docker, haven't really touched it. Docker is the same. Just using it to run my containers. Haven't ventured at all into /var/lib/docker

The weird thing is that it's intermittent. It's only happened twice since I started using immich. I've been restarting the containers repeatedly for a few days now and it hasnt happened again.

It's really weird. I think there are somehow two database volumes on my system.

The reason I think this is because:

  1. I am the only user
  2. there is only one user in the user table
  3. there are two folders in the upload folders. Both have a uuid as their name and one of the uuids matches with the user id in the database
  4. the user_token table has tokens no tokens from before this happened to me a couple days ago

So, where did this other user come from? Why have none of my log ins been tracked in the database before the incident?