Server Status not showing properly when Immich accessed through reverse proxy #2803

Closed
opened 2026-02-05 07:04:09 +03:00 by OVERLORD · 0 comments
Owner

Originally created by @thetombrider on GitHub (Apr 8, 2024).

The bug

I recently spun up Immich on my home server and i have to say is a fantastic piece of software, so thank you for developing it.

I then set up an ec2 instance to run as an ad blocker and connected it through tailscale to my home server to expose some of my apps (immich being one of them) securely through tailscale and nginx proxy manager. Thus i now have a domain pointed to the instance with nginx installed and nginx then redirects the traffic over the tailscale network to my home machine thus making it accessible.

With that being said, i noticed a weird behavior where if i access my machine directly (through its tailscale or local ip) the server status in the bottom left shows the correct status and app version, while if i access the app through my domain it shows "offline" even though the app works perfectly fine.

I am attaching screenshots for further reference

here the app shows the status correctly
Screenshot 2024-04-08 alle 00 09 29
here the app isnt showing the status correctly (bottom left)
Screenshot 2024-04-08 alle 00 07 20

The OS that Immich Server is running on

docker container running on ubuntu 22.04

Version of Immich Server

v1.99.0

Version of Immich Mobile App

v1.99.0

Platform with the issue

  • Server
  • Web
  • Mobile

Your docker-compose.yml content

version: '3.8'

#
# 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}
    command: ['start.sh', 'immich']
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - stack.env
    ports:
      - 2284:3001
    depends_on:
      - redis
      - database
    restart: always

  immich-microservices:
    container_name: immich_microservices
    image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
    # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/hardware-transcoding
    #   file: hwaccel.transcoding.yml
    #   service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding
    command: ['start.sh', 'microservices']
    volumes:
      - ${UPLOAD_LOCATION}:/usr/src/app/upload
      - /etc/localtime:/etc/localtime:ro
    env_file:
      - stack.env
    depends_on:
      - redis
      - database
    restart: always

  immich-machine-learning:
    container_name: immich_machine_learning
    # For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag.
    # Example tag: ${IMMICH_VERSION:-release}-cuda
    image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
    # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration
    #   file: hwaccel.ml.yml
    #   service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable
    volumes:
      - model-cache:/cache
    env_file:
      - stack.env
    restart: always

  redis:
    container_name: immich_redis
    image: registry.hub.docker.com/library/redis:6.2-alpine@sha256:51d6c56749a4243096327e3fb964a48ed92254357108449cb6e23999c37773c5
    restart: always

  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:

Your .env content

UPLOAD_LOCATION=/some/path
IMMICH_VERSION=release
DB_PASSWORD=somepw
DB_HOSTNAME=somename
DB_USERNAME=someusername
DB_DATABASE_NAME=somedifferentname
REDIS_HOSTNAME=someyetdifferentname

Reproduction steps

accessing the app from 2 different addresses, ip and domain with nginx proxy manager

Additional information

No response

Originally created by @thetombrider on GitHub (Apr 8, 2024). ### The bug I recently spun up Immich on my home server and i have to say is a fantastic piece of software, so thank you for developing it. I then set up an ec2 instance to run as an ad blocker and connected it through tailscale to my home server to expose some of my apps (immich being one of them) securely through tailscale and nginx proxy manager. Thus i now have a domain pointed to the instance with nginx installed and nginx then redirects the traffic over the tailscale network to my home machine thus making it accessible. With that being said, i noticed a weird behavior where if i access my machine directly (through its tailscale or local ip) the server status in the bottom left shows the correct status and app version, while if i access the app through my domain it shows "offline" even though the app works perfectly fine. I am attaching screenshots for further reference here the app shows the status correctly <img width="1440" alt="Screenshot 2024-04-08 alle 00 09 29" src="https://github.com/immich-app/immich/assets/48912889/9cd5ad1a-3263-4535-b80c-e2b483459498"> here the app isnt showing the status correctly (bottom left) <img width="1440" alt="Screenshot 2024-04-08 alle 00 07 20" src="https://github.com/immich-app/immich/assets/48912889/2eac0dc1-d903-4f05-aea6-d2d604be59bc"> ### The OS that Immich Server is running on docker container running on ubuntu 22.04 ### Version of Immich Server v1.99.0 ### Version of Immich Mobile App v1.99.0 ### Platform with the issue - [X] Server - [X] Web - [ ] Mobile ### Your docker-compose.yml content ```YAML version: '3.8' # # 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} command: ['start.sh', 'immich'] volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload - /etc/localtime:/etc/localtime:ro env_file: - stack.env ports: - 2284:3001 depends_on: - redis - database restart: always immich-microservices: container_name: immich_microservices image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/hardware-transcoding # file: hwaccel.transcoding.yml # service: cpu # set to one of [nvenc, quicksync, rkmpp, vaapi, vaapi-wsl] for accelerated transcoding command: ['start.sh', 'microservices'] volumes: - ${UPLOAD_LOCATION}:/usr/src/app/upload - /etc/localtime:/etc/localtime:ro env_file: - stack.env depends_on: - redis - database restart: always immich-machine-learning: container_name: immich_machine_learning # For hardware acceleration, add one of -[armnn, cuda, openvino] to the image tag. # Example tag: ${IMMICH_VERSION:-release}-cuda image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release} # extends: # uncomment this section for hardware acceleration - see https://immich.app/docs/features/ml-hardware-acceleration # file: hwaccel.ml.yml # service: cpu # set to one of [armnn, cuda, openvino, openvino-wsl] for accelerated inference - use the `-wsl` version for WSL2 where applicable volumes: - model-cache:/cache env_file: - stack.env restart: always redis: container_name: immich_redis image: registry.hub.docker.com/library/redis:6.2-alpine@sha256:51d6c56749a4243096327e3fb964a48ed92254357108449cb6e23999c37773c5 restart: always 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: ``` ### Your .env content ```Shell UPLOAD_LOCATION=/some/path IMMICH_VERSION=release DB_PASSWORD=somepw DB_HOSTNAME=somename DB_USERNAME=someusername DB_DATABASE_NAME=somedifferentname REDIS_HOSTNAME=someyetdifferentname ``` ### Reproduction steps ```bash accessing the app from 2 different addresses, ip and domain with nginx proxy manager ``` ### Additional information _No response_
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#2803