immich-app / immich

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

[BUG] On Umbrel OS - Not starting - Unable to load feature flags #3947

Closed Pinipon73 closed 1 year ago

Pinipon73 commented 1 year ago

The bug

I had to hard stop (disconnect) my Umbrel OS and when I started it again everything went back to normal, but not Immich, which has a error that says “Unable to load feature flags” IMMICH UMBREL - UNABLE TO LOAD FEATURE FLAGS

Even if I leave it for one day or more it doesn’t work, I’m also not sure if I can reinstall the app without losing the files that I have in there so I didn’t want to risk it.

If anyone has any idea of what’s the cause and how to fix it I’ll really appreciate any help.

The OS that Immich Server is running on

umbrelOS 0.5.4

Version of Immich Server

v1.75.2

Version of Immich Mobile App

none

Platform with the issue

Your docker-compose.yml content

version: '3.7'

services:
        tor_proxy:
                container_name: tor_proxy
                image: getumbrel/tor:0.4.7.8@sha256:2ace83f22501f58857fa9b403009f595137fa2e7986c4fda79d82a8119072b6a
                user: "1000:1000"
                restart: on-failure
                volumes:
                    - ${PWD}/tor/torrc-proxy:/etc/tor/torrc:ro
                    - ${PWD}/tor/data:/data
                environment:
                    HOME: "/tmp"
                ports:
                  - "127.0.0.1:$TOR_PROXY_PORT:$TOR_PROXY_PORT"
                networks:
                    default:
                        ipv4_address: $TOR_PROXY_IP
        nginx:
                container_name: nginx
                image: nginx:1.17.8@sha256:380eb808e2a3b0dd954f92c1cae2f845e6558a15037efefcabc5b4e03d666d03
                depends_on: [ dashboard, manager ]
                volumes:
                        - ${PWD}/nginx:/etc/nginx
                restart: on-failure
                stop_grace_period: 30s
                ports:
                    - "${NGINX_PORT}:80"
                networks:
                    default:
                        ipv4_address: $NGINX_IP
        dashboard:
                container_name: dashboard
                image: getumbrel/dashboard:0.5.4@sha256:0662567cc1b0ba2179f65bfae0472d085a7e79f53f502e8d1789a1ecba58744b
                restart: on-failure
                stop_grace_period: 1m30s
                networks:
                    default:
                        ipv4_address: $DASHBOARD_IP
        manager:
                container_name: manager
                image: getumbrel/manager:0.5.4@sha256:400559b951ec19b9e79c5eec96bf2a11efd57a7f9c65f9a8cc03e6ff833e9a59
                restart: on-failure
                stop_grace_period: 5m30s
                volumes:
                        - ${PWD}:${PWD}
                        - ${PWD}/info.json:/info.json
                        - ${PWD}/db:/db
                        - ${PWD}/jwt:/jwt
                        - ${PWD}/events/signals:/signals
                        - ${PWD}/app-data:/app-data
                        - ${PWD}/repos:/repos
                        - ${PWD}/statuses:/statuses
                        - ${PWD}/tor/data:/var/lib/tor/
                        - /var/run/docker.sock:/var/run/docker.sock
                        - ${DOCKER_BINARY:-/usr/bin/docker}:/usr/bin/docker
                environment:
                    PORT: "3006"
                    USER_PASSWORD_FILE: "/db/user.json"
                    JWT_PUBLIC_KEY_FILE: "/jwt/jwt.pem"
                    JWT_PRIVATE_KEY_FILE: "/jwt/jwt.key"
                    JWT_EXPIRATION: "604800"
                    DOCKER_COMPOSE_DIRECTORY: $PWD
                    UMBREL_SEED_FILE: "/db/umbrel-seed/seed"
                    UMBREL_DASHBOARD_HIDDEN_SERVICE_FILE: "/var/lib/tor/web/hostname"
                    UMBREL_AUTH_SECRET: $UMBREL_AUTH_SECRET
                    BITCOIN_P2P_HIDDEN_SERVICE_FILE: "/var/lib/tor/bitcoin-p2p/hostname"
                    BITCOIN_P2P_PORT: $BITCOIN_P2P_PORT
                    BITCOIN_RPC_HIDDEN_SERVICE_FILE: "/var/lib/tor/bitcoin-rpc/hostname"
                    BITCOIN_RPC_PORT: $BITCOIN_RPC_PORT
                    BITCOIN_RPC_USER: $BITCOIN_RPC_USER
                    BITCOIN_RPC_PASSWORD: $BITCOIN_RPC_PASS
                    LND_REST_HIDDEN_SERVICE_FILE: "/var/lib/tor/lnd-rest/hostname"
                    LND_GRPC_HIDDEN_SERVICE_FILE: "/var/lib/tor/lnd-grpc/hostname"
                    LND_CERT_FILE: "/lnd/tls.cert"
                    LND_ADMIN_MACAROON_FILE: "/lnd/data/chain/bitcoin/${BITCOIN_NETWORK}/admin.macaroon"
                    SHUTDOWN_SIGNAL_FILE: "/signals/shutdown"
                    REBOOT_SIGNAL_FILE: "/signals/reboot"
                    GITHUB_REPO: "getumbrel/umbrel"
                    UMBREL_VERSION_FILE: "/info.json"
                    UPDATE_STATUS_FILE: "/statuses/update-status.json"
                    UPDATE_SIGNAL_FILE: "/signals/update"
                    UPDATE_LOCK_FILE: "/statuses/update-in-progress"
                    BACKUP_STATUS_FILE: "/statuses/backup-status.json"
                    DEBUG_STATUS_FILE: "/statuses/debug-status.json"
                    REPO_UPDATE_STATUS_FILE: "/statuses/repo-update-status.json"
                    TOR_HIDDEN_SERVICE_DIR: "/var/lib/tor"
                    IS_UMBREL_OS: ${IS_UMBREL_OS:-"false"}
                    UMBREL_APP_REPO_URL: "https://github.com/getumbrel/umbrel-apps.git"
                networks:
                    default:
                        ipv4_address: $MANAGER_IP
        auth:
                container_name: auth
                image: getumbrel/auth-server:v0.5.1@sha256:afcd9065eab02f98ee6bf705045170a4b385fb5f81e3b168bb92ffb8ac7a1760
                user: "1000:1000"
                #build: ./deps/app-auth
                restart: on-failure
                environment:
                    PORT: $AUTH_PORT
                    UMBREL_AUTH_SECRET: $UMBREL_AUTH_SECRET
                    MANAGER_IP: $MANAGER_IP
                    MANAGER_PORT: 3006
                    DASHBOARD_IP: $DASHBOARD_IP
                    DASHBOARD_PORT: 3004
                volumes:
                        - ${PWD}/tor/data:/var/lib/tor:ro
                        - ${PWD}/app-data:/app-data:ro
                ports:
                    - "${AUTH_PORT}:${AUTH_PORT}"
                networks:
                    default:
                        ipv4_address: $AUTH_IP
networks:
    default:
      name: umbrel_main_network
      ipam:
          driver: default
          config:
              - subnet: "$NETWORK_IP/16"

Your .env content

# Umbrel
NETWORK_IP=10.21.0.0
GATEWAY_IP=10.21.0.1
NGINX_IP=10.21.21.2
NGINX_PORT=80
DASHBOARD_IP=10.21.21.3
MANAGER_IP=10.21.21.4
AUTH_IP=10.21.21.6
AUTH_PORT=2000
BITCOIN_NETWORK=mainnet
BITCOIN_IP=10.21.21.8
BITCOIN_RPC_PORT=8332
BITCOIN_P2P_PORT=8333
BITCOIN_ZMQ_RAWBLOCK_PORT=28332
BITCOIN_ZMQ_RAWTX_PORT=28333
BITCOIN_ZMQ_HASHBLOCK_PORT=28334
BITCOIN_ZMQ_SEQUENCE_PORT=28335
BITCOIN_RPC_USER=umbrel
BITCOIN_RPC_PASS=6hD2k_Enmqu-Nb0dZ9GugNDmWWMMaG-_8ycrQUXyAoY=
BITCOIN_RPC_AUTH='umbrel:135533b23ff243d637fa823ab5873a8c$28ca0f1c652c1127aaf4cf43f2eabb71d5617bf5a2f06fb9def5a1297584e483'
LND_IP=10.21.21.9
LND_GRPC_PORT=10009
LND_REST_PORT=8080
ELECTRUM_IP=10.21.21.10
ELECTRUM_PORT=50001
TOR_PROXY_IP=10.21.21.11
TOR_PROXY_PORT=9050
TOR_PASSWORD=bObAyNH-d7Q8a6MGZ5kAhoSW0QkvCNCf8AmRz9sWM7E=
TOR_HASHED_PASSWORD=16:CD12BC037CDA5E0C604214B6770A3DBF9BDFB6E9295EE4043B249FAFCC
DOCKER_BINARY=/usr/bin/docker
UMBREL_AUTH_SECRET=67fcfb11fd78f92e5d8f15f2aa0a15f9ef31732554437caad4dd21894ffde015

Reproduction steps

1.Suddenly disconnect Umbrel server
2. Turn on again
3. Enter Immich server app

Additional information

No response

alextran1502 commented 1 year ago

Hello, if Immich server does not run, the web app or mobile app won't work. I saw in your screenshot the server is offline/not reachable. Please make sure to have everything start up correctly

Pinipon73 commented 1 year ago

That's the problem, the server doesn't seem to be starting up correctly and I can't find a way to fix it