mirror of
https://github.com/immich-app/immich.git
synced 2026-07-25 14:00:45 +03:00
[Feature]: Running Immich behind a Reverse-Proxy configured with a Self-signed-certificate #143
Closed
opened 2026-02-04 18:07:20 +03:00 by OVERLORD
·
23 comments
No Branch/Tag Specified
main
chore/translations
fix/partner-ownership-contention
renovate/machine-learning
renovate/pypi-pillow-vulnerability
renovate/pypi-pydantic-settings-vulnerability
renovate/java-25.x
renovate/mobile
chore/harden-mobile-openapi-gen
renovate/java-21.x
fix/min-faces
refactor/asset-update
feat/merge-people-mobile
chore/face-cluster-abstraction
refactor/search-v3/pr-2a
fcast
fix/android-local-album-date
fix/24545-sync-retry-cx
fix/android-locked-folder-delete
make-sure-memory-widget-render
chore/freezed-example
fix/clamp-local-date-time-to-valid-value
fix/datetime-max-limit
fix/viewer-long-image-aspect
feat/native-core
feat/yucca-integration
refactor/mobile-actions
fix/ws-reconnect-battery
renovate/sharp
renovate/pigeon-27.x
refactor/auto-trash-sync
feat/release-source-branch
refactor/session-repository
fix/library-map-live-bounds-updates
renovate/permission_handler-12.x
renovate/node-24.x
fix/mobile-scroll-velocity-placeholders
fix/library-map-loading-flash
agg23/appbar-experiments
renovate/pep621-lock-file-maintenance-machine-learning
refactor/undo-actions
refactor/actions
feat/restore-action
feat/delete-action
fix/29853-thumbnail-decode-size
bugfix/live-photo-stuck
feature/load-previews
chore/pub-upgrade
custom-app-logo
fix/failed-sync-blocks-resume
feat/ml-hwaccel-testing
feat/workflow-logs
feat/server-chunked-uploads
feat/upload-action
fix-29727
feat/download-tag-action
feat/share-action
feat/album-actions
fix/android-cr3-save
feat/browser-profile-action
feat/cast-slideshow-action
feat/locked-folder-action
fix/unauthorized-memory-creation
feat/context-actions
refactor/action-class
feat/memories-view
refactor/asset-action-filter
feat/archive-action
feat/stack-action
feat/mobile-hls-player
refactor/stack-actions
feat/workflow-asset-tags
fix/timeline-drag-select-stops
fix/featured-photo-thumbnail-cache
fix/album-timeline-date-ordering
chore/album-remove-assets
feat/partner-table-permissions
fix/ocr-after-edit
fix/re-enable-pruning
refactor/delete-restore-actions
apk-build-deployment
edit-photo-stacking
fix/mise-lockfile
feat/web-hls-hover
refactor/store-cleanup
fix/hash-mismatch
refactor/app-metadata
refactor/advanced-settings
refactor/current-user
fix/dedupe-integrity-missing-paths
chore/albums-select
fix/fdroid-meta
refactor/per-asset-backup-flag
fix/av1-threads
fix/pass-secrets
fix/download-progress-stuck
fix/negative-backup-remainder
feat/map-asset-number
test-bump-prerelease
fix/handle-unlinking-motion-photos
fix/date-range-formatting
fix/mobile-album-action-msg
asset-add-to-album-trigger
refactor/face-editor-decoupling
feat/zoom-aware-face-editing
refactor/adaptive-image-dimensions
fix-face-editor-video-preview
fix-stack-face-tag-selection
fix/face-boxes-edit-panel
workflow-webhook-step
feat/hero_view_transitions
fix/map-sidepanel-queries
feat/dart-openapi-generator
claude/share-quality-5d7Gn
drag-drop-ghost-target
refactor/workflow-page
refactor/mobile-upload
fix-scroll-flicker-2
update-mise-lock-file
feat/kysely-0.29
release-candidate-flow-1
fix/mobile-22522-sqlite-2067
fix/job-lock
release-candidate-flow-3
release-candidate-flow-2
show-in-timeline-toggle
fix/mise-windows
plan-local-image-display
fix/remote-thumbnail-fallback
chore/riverpod-update
album-order-per-user
fix/web-timeline-dom-node-retention
chore/svelte-enable-state-referenced-locally
feat/favorite-albums
feat/patch-release-from-branch
fix/oauth-linking
feat/timeline_scroll_buffer
panorama-face-overlay
push-txxyuusptoru
push-zpwsovysllvn
chore/queue-endpoint-migration
fix/remove-from-album
chore/thumbnail-histogram
fix/video-thumbnail-bindthis-regression
fix/scrubber-drag-edge-cases
fix/timeline_layout_row_height
refactor-cancellable-task
uhthomas/fix-mobile-use-timer
uhthomas/fix-mobile-video-controls-key
uhthomas/chore-mobile-search-declarative
owner-role-album-user
feat/livephoto-editing
favorite-albums
uhthomas/fix-mobile-isolate-auth
fix/library-watcher-excludes
chore/library-e2e-to-medium
push-ynllunsvrpxy
fix/dont-delete-offline-library-files
push-zvwwxmvkrspv
push-kywsnvvkwzts
push-xxnxokokzrou
push-voozlrlkxsnu
view-in-timeline-transition
push-uymvmlknxpmx
push-qslzsplnusoz
fix/mobile-video-stall
uhthomas/draft-mobile-image-cache-cancel
push-yquostpqnkxp
feat/vitest-4
claude/offload-icloud-hashing-bI3GZ
midzelis/wip
uhthomas/fix-server-fsync-all
feat/mobile-widget-shared-client
push-lnyuzsutzkqq
push-vqqqxxvkunru
push-wvnmqoswptww
push-nwxlpmyzkyrl
fix/map-webgl-error
fix/mobile-player-fit
feat/panorama-tiles
csp-policy
push-rsywxvptwxuv
refactor/restores-file-interceptor
postgres-socketio
claude/auto-screenshot-web-changes-Y7efI
visual-review/pr-26535
push-lvyturrtwkrq
feat/library-offline-count
fix/mobile-video-aspect-ratio
uhthomas/fix-mobile-search-results
uhthomas/feat-sort-smart-search
uhthomas/chore-mobile-maplibre
uhthomas/mobile-fix-asset-details-album-pop
feat/crawl-wrapper
push-skvzqoozqkpl
feat/edit-filters
feat/pg-queue
refactor/asset-upload
better-project-structure
uhthomas/mobile-feat-asset-viewer-details
fix/ml-rocm-build
feat/asset-file-apis
feature/bottom-buttons-order
sqlite_thumbs
fix-keep-correct-ios-shared-album-asset
push-vpxwmwwxwnvw
fix-migration-width-height
shared-deep-link-handler
feat/thumbnail-native-clients
feat/platform-clients
fix/foreground-cloud-sync
filter-by-person
refactor/sidebar
fix/merged-edited-assets
feat/create-job-with-dto
feat/ios-fastlane-match
match-signing
fix-update-time-update-timeline
feat/modal-routes
feature/mobile-view-asset-owner
feat/system-settings
feature/show-activity-count
feat/location-favorites
feature/rearrange-buttons-2
fix/download-storage-template
chore/originals-in-asset-files
ben/tree-a11y
new-search-filter-ui
refactor/expectSelectedReadonly
refactor/mobile-grdb
feat/mobile-native-local-sync
refactor/timeline_ops
fix/scrubber_end
refactor/virtualsegment
refactor/rename_daymonth_groups
fix-remote-sync-clean-up
debug/cf-chunked-uploads
feat/search-filter-album/web
feat/session-permissions
feat/mobile-dynamic-thumbnails
refactor/extract_photostream
refactor/rename_load_api
refactor/timeline2
refactor/timeline3
feat-no-thumbhash-cache
feat/mobile-hdr-images
feat/beta-background-upload
fix/beta-timeline-memories-setting
fix/failed-uploads-not-removed
feat/groups
drift-map-page
feat/add-to-album-action
track-livephotos
feat/maintenance-worker
refactor/server-side-dedupe
feat/integrity-checks
dev/recognition-eval
lighter_buckets_test
perf/postgres-queue
tmp/demo-snapshot-preview
fix/server-migration-file-extension
rknn-toolkit-lite2
feature/Add-rocm-support-for-machine-learning
chore/async-hash-file
feat/shared-link-view-count
feat/graphql
no-video-player
fix/server-qsv-output-format
chore/server-geodata-tweaks
mobile/native-video-player-no-hero
feat/local-tileserver
feat/ml-armnn-conversion
chore/handle-output_dims
feat/capacitor-mobile-app-poc
feat/server-nvenc-hw-decoding
web/automation-ui
object-storage
ml/tflite
feat/ml-export-cli
v3.0.3
v3.0.2
v3.0.1
v3.0.0
v3.0.0-rc.4
v3.0.0-rc.3
v3.0.0-rc.2
v3.0.0-rc.1
v3.0.0-rc.0
v2.7.5
v2.7.4
v2.7.3
v2.7.2
v2.7.1
v2.7.0
v2.6.3
v2.6.2
v2.6.1
v2.6.0
v2.5.6
v2.5.5
v2.5.4
v2.5.3
v2.5.2
v2.5.1
v2.5.0
v2.4.1
v2.4.0
v2.3.1
v2.3.0
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.0
v2.0.1
v2.0.0
v1.144.1
v1.144.0
v1.143.1
v1.143.0
v1.142.1
v1.142.0
v1.141.1
v1.141.0
v1.140.1
v1.140.0
v1.139.4
v1.139.3
v1.139.2
v1.139.1
v1.139.0
v1.138.1
v1.138.0
v1.137.3
v1.137.2
v1.137.1
v1.137.0
v1.136.0
v1.135.3
v1.135.2
v1.135.1
v1.135.0
v1.134.0
v1.133.1
v1.133.0
v1.132.3
v1.132.2
v1.132.1
v1.132.0
v1.131.3
v1.131.2
v1.131.1
v1.131.0
v1.130.3
v1.130.2
v1.130.1
v1.130.0
v1.129.0
v1.128.0
v1.127.0
v1.126.1
v1.126.0
v1.125.7
v1.125.6
v1.125.5
v1.125.4
v1.125.3
v1.125.2
v1.125.1
v1.125.0
v1.124.2
v1.124.1
v1.124.0
v1.123.0
v1.122.3
v1.122.2
v1.122.1
v1.122.0
v1.121.0
v1.120.2
v1.120.1
v1.120.0
v1.119.1
v1.119.0
v1.118.2
v1.118.1
v1.118.0
v1.117.0
v1.116.2
v1.116.1
v1.116.0
v1.115.0
v1.114.0
v1.113.1
v1.113.0
v1.112.1
v1.112.0
v1.111.0
v1.110.0
v1.109.2
v1.109.1
v1.109.0
v1.108.0
v1.107.2
v1.107.1
v1.107.0
v1.106.4
v1.106.3
v1.106.2
v1.106.1
v1.106.0
v1.105.1
v1.105.0
v1.104.0
v1.103.1
v1.103.0
v1.102.3
v1.102.2
v1.102.1
v1.102.0
v1.101.0
v1.100.0
v1.99.0
v1.98.2
v1.98.1
v1.98.0
v1.97.0
v1.96.0
v1.95.1
v1.95.0
v1.94.1
v1.94.0
v1.93.3
v1.93.2
v1.93.1
v1.93.0
v1.92.1
v1.92.0
v1.91.4
v1.91.3
v1.91.2
v1.91.1
v1.91.0
v1.90.2
v1.90.1
v1.90.0
v1.89.0
v1.88.2
v1.88.1
v1.88.0
v1.87.0
v1.86.0
v1.85.0
v1.84.0
v1.83.0
v1.82.1
v1.82.0
v1.81.1
v1.81.0
v1.80.0
v1.79.1
v1.79.0
v1.78.1
v1.78.0
v1.77.0
v1.76.1
v1.76.0
v1.75.2
v1.75.1
v1.75.0
v1.74.0
v1.73.0
v1.72.2
v1.72.1
v1.72.0
v1.71.0
v1.70.0
v1.69.0
v1.68.0
v1.67.2
v1.67.1
v1.67.0
v1.66.1
v1.66.0
v1.65.0
v1.64.0
v1.63.2
v1.63.1
v1.63.0
v1.62.1
v1.62.0
v1.61.0
v1.60.0
v1.59.1
v1.59.0
v1.58.0
v1.57.1
v1.57.0
v1.56.2
v1.56.1
v1.56.0
v1.55.1
v1.55.0
v1.54.1
v1.54.0
v1.53.0
v1.52.1
v1.52.0
v1.51.2
v1.51.1
v1.51.0
v1.50.1
v1.50.0
v1.49.0
v1.48.1
v1.48.0
v1.47.3
v1.47.2
v1.47.1
v1.47.0
v1.46.1
v1.46.0
v1.45.0
v1.44.0
v1.43.1
v1.43.0
v1.42.0_65-dev
v1.41.1_64-dev
v1.41.0_64-dev
v1.40.1_63-dev
v1.40.0_63-dev
v1.39.0_61-dev
v1.38.2_60-dev
v1.38.1_60-dev
v1.38.0_60-dev
v1.37.0_58-dev
v1.36.2_56-dev
v1.36.1_55-dev
v1.36.0_55-dev
v1.35.0_54-dev
v1.34.0_53-dev
v1.33.1_52-dev
v1.33.0_52-dev
v1.32.1_51-dev
v1.32.0_50-dev
v1.31.1_49-dev
v1.31.0_49-dev
v1.30.2_48-dev
v1.30.0_46-dev
v1.29.6_45-dev
v1.29.6_44-dev
v1.29.5_44-dev
v1.29.4_44-dev
v1.29.3_43-dev
v1.29.2_43-dev
v1.29.1_43-dev
v1.29.0_42-dev
v1.28.4_41-dev
v1.28.4_42-dev
v1.28.3_41-dev
v1.28.2_40-dev
v1.28.1_39-dev
v1.28.0_38-dev
v1.27.0_37-dev
v1.26.0_36-dev
v1.25.0_35-dev
v1.24.0_34-dev
v1.23.0_33-dev
v1.22.0_32-dev
v1.21.1_31-dev
v1.21.0_31-dev
v1.20.3_30-dev
v1.20.2_30-dev
v1.20.1_30-dev
v1.20.0_30-dev
v1.19.1_29-dev
v1.19.0_29-dev
v1.18.0_27-dev
v1.17.0_25-dev
v1.16.0_23-dev
v1.15.1_21-dev
v1.15.0_21-dev
v1.14.0_21-dev
v1.13.0_20-dev
v1.12.0_18-dev
v1.11.0_17-dev
v1.10.0_15-dev
v1.9.1_14-dev
v1.9.0_13-dev
v1.8.0_12-dev
v1.7.0_11-dev
v1.6.0_10-dev
v1.5.1+9-dev
v1.5.0+8-dev
v1.4.0+7-dev
v1.4.0+6-dev
v1.4.0-dev
v1.3.0-dev
v1.3.1-dev
v0.6-dev
v0.5-dev
v0.4-dev
v0.3-dev
v0.2-dev
first-android-release
Labels
Clear labels
accessibility
changelog:enhancement
changelog:security
changelog:skip
changelog:translation
cli
date-time
dependencies
documentation
external-library
format
good first issue
mobile-beta
mobile-beta
mobile-beta
needs-answer
nice to have
pull-request
sharing
tech-debt
📱mobile
🖥️web
🗄️server
🧠machine-learning
Mirrored from GitHub Pull Request
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: immich-app/immich#143
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @spammads on GitHub (Jul 13, 2022).
Feature detail
I run a standard Nginx-Reverse-Proxy with a self-signed-certificate.
So I can access the service with a subdomain like
https://immich.example.localIf I set
VITE_SERVER_ENDPOINT=https://immich.example.local/apithe Web-Container complains, that it can't reach the resource because of the self-signed-certificate.If I set
VITE_SERVER_ENDPOINT=http://immich-proxy:2283/apiI get messages in the developer-console saying:Blocked loading mixed active content “http://immich-proxy:2283/api/asset".Would be great if Immich could be run behind a custom reverse-proxy.
Running latest docker on Ubuntu 20.04.
And thanks for the great work on this one!
Seems that Immich could be the missing piece in the selfhosting photo-puzzle.
Platform
Web
@matthinc commented on GitHub (Jul 13, 2022):
Hi @CKranebitter we were discussing your problem internally. We decided to remove all API-calls between the
webandservercontainers and call the auth endpoint directly from the browser. This would probably solve your problem as you could useVITE_SERVER_ENDPOINT=https://...without any problem, as long as your browser supports your certificate.We will probably change this within a few days.
Thank you for the suggestion.
@spammads commented on GitHub (Jul 13, 2022):
Sounds great.
And thanks for letting me know this quickly.
Looking forward to this PR.
And the OIDC one.
Best.
@MrColumbo commented on GitHub (Jul 16, 2022):
I just deployed immich a few hours ago for the first time and also setup a reverse proxy. I use nginx proxy manager (npm). I am able to access the webinterface and upload photos and I am able to run the android app and see those photos but when i start backup it spins forever ......is there something special needed to get configured on the reverse proxy?
In the env file i have like https://mydomain/api and the reverse proxy just forwards https://mydomain to http://ip:2328
@bertmelis commented on GitHub (Jul 16, 2022):
Shouldn't nginx forward to localhost?
@spammads commented on GitHub (Jul 16, 2022):
Depends. Basically the Reverseproxy of the user needs to point to the Proxycontainer (or Server) of Immich. When using docker, container- and service-names can be used inside Nginx.
@MrColumbo commented on GitHub (Jul 16, 2022):
i looked at the reverse proxy logs .....does this
there are some warning lines
2022/07/16 12:20:11 [warn] 13996#13996: *427960 a client request body is buffered to a temporary file /tmp/nginx/body/4/57/0000028574, client: ###.###.###.###, server: immich#############.duckdns.org, request: "POST /api/asset/upload HTTP/1.1", host: "immich#############.duckdns.org"
2022/07/16 12:20:13 [warn] 13996#13996: *427964 a client request body is buffered to a temporary file /tmp/nginx/body/5/57/0000028575, client: ###.###.###.###, server: immich#############.duckdns.org, request: "POST /api/asset/upload HTTP/1.1", host: "immich#############.duckdns.org"
2022/07/16 12:20:14 [warn] 13996#13996: *427966 a client request body is buffered to a temporary file /tmp/nginx/body/6/57/0000028576, client: ###.###.###.###, server: immich#############.duckdns.org, request: "POST /api/asset/upload HTTP/1.1", host: "immich#############.duckdns.org"
2022/07/16 12:20:20 [warn] 13996#13996: *427973 a client request body is buffered to a temporary file /tmp/nginx/body/7/57/0000028577, client: ###.###.###.###, server: immich#############.duckdns.org, request: "POST /api/asset/upload HTTP/1.1", host: "immich#############.duckdns.org"
2022/07/16 12:20:22 [warn] 13996#13996: *427977 a client request body is buffered to a temporary file /tmp/nginx/body/8/57/0000028578, client: ###.###.###.###, server: immich#############.duckdns.org, request: "POST /api/asset/upload HTTP/1.1", host: "immich#############.duckdns.org"
2022/07/16 12:20:23 [warn] 13996#13996: *427980 a client request body is buffered to a temporary file /tmp/nginx/body/9/57/0000028579, client: ###.###.###.###, server: immich#############.duckdns.org, request: "POST /api/asset/upload HTTP/1.1", host: "immich#############.duckdns.org"
the accesss log looks like this
[16/Jul/2022:12:20:10 +0000] - 200 200 - GET https immich#############.duckdns.org "/api/asset/c1c7fca51b2a237ab9cfe131b7b7b8db0b89ba2a6677703c658d415960559ff2" [Client ###.###.###.###] [Length 2] [Gzip -] [Sent-to 192.168.178.132] "Dart/2.17 (dart:io)" "-"
[16/Jul/2022:12:20:11 +0000] - 304 304 - GET https immich#############.duckdns.org "/api/server-info/ping" [Client ###.###.###.###] [Length 0] [Gzip -] [Sent-to 192.168.178.132] "Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0" "https://immich#############.duckdns.org/photos"
[16/Jul/2022:12:20:11 +0000] - 200 200 - GET https immich#############.duckdns.org "/api/server-info" [Client ###.###.###.###] [Length 179] [Gzip -] [Sent-to 192.168.178.132] "Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0" "https://immich#############.duckdns.org/photos"
[16/Jul/2022:12:20:12 +0000] - 400 400 - POST https immich#############.duckdns.org "/api/asset/upload" [Client ###.###.###.###] [Length 69] [Gzip -] [Sent-to 192.168.178.132] "Dart/2.17 (dart:io)" "-"
[16/Jul/2022:12:20:13 +0000] - 400 400 - POST https immich#############.duckdns.org "/api/asset/upload" [Client ###.###.###.###] [Length 69] [Gzip -] [Sent-to 192.168.178.132] "Dart/2.17 (dart:io)" "-"
[16/Jul/2022:12:20:16 +0000] - 400 400 - POST https immich#############.duckdns.org "/api/asset/upload" [Client ###.###.###.###] [Length 69] [Gzip -] [Sent-to 192.168.178.132] "Dart/2.17 (dart:io)" "-"
[16/Jul/2022:12:20:20 +0000] - 200 200 - GET https immich#############.duckdns.org "/api/server-info" [Client ###.###.###.###] [Length 179] [Gzip -] [Sent-to 192.168.178.132] "Dart/2.17 (dart:io)" "-"
[16/Jul/2022:12:20:20 +0000] - 200 200 - GET https immich#############.duckdns.org "/api/asset/c1c7fca51b2a237ab9cfe131b7b7b8db0b89ba2a6677703c658d415960559ff2" [Client ###.###.###.###] [Length 2] [Gzip -] [Sent-to 192.168.178.132] "Dart/2.17 (dart:io)" "-"
[16/Jul/2022:12:20:21 +0000] - 400 400 - POST https immich#############.duckdns.org "/api/asset/upload" [Client ###.###.###.###] [Length 69] [Gzip -] [Sent-to 192.168.178.132] "Dart/2.17 (dart:io)" "-"
[16/Jul/2022:12:20:21 +0000] - 304 304 - GET https immich#############.duckdns.org "/api/server-info/ping" [Client ###.###.###.###] [Length 0] [Gzip -] [Sent-to 192.168.178.132] "Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0" "https://immich#############.duckdns.org/photos"
[16/Jul/2022:12:20:21 +0000] - 200 200 - GET https immich#############.duckdns.org "/api/server-info" [Client ###.###.###.###] [Length 179] [Gzip -] [Sent-to 192.168.178.132] "Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0" "https://immich#############.duckdns.org/photos"
[16/Jul/2022:12:20:22 +0000] - 400 400 - POST https immich#############.duckdns.org "/api/asset/upload" [Client ###.###.###.###] [Length 69] [Gzip -] [Sent-to 192.168.178.132] "Dart/2.17 (dart:io)" "-"
[16/Jul/2022:12:20:24 +0000] - 400 400 - POST https immich#############.duckdns.org "/api/asset/upload" [Client ###.###.###.###] [Length 69] [Gzip -] [Sent-to 192.168.178.132] "Dart/2.17 (dart:io)" "-"
@bertmelis localhost only if reverse proxy is on same host as immich but in my case it is not
The android app even shows the percentage for each photo going up to 100% but it stays spinning
...by the way .....i am using a letsencrypt certificate and not a self signed
I will try to change the env file and validate that it is working directly. I never tried it with the android app since backing up pictures is mostly important during vacation ....so I thought i use the reverse proxy from the very beginning which besides backing up photos works fine
This is what i see in immich (cli)
immich_redis | 1:M 16 Jul 2022 12:19:03.494 * 100 changes in 300 seconds. Saving...
immich_redis | 1:M 16 Jul 2022 12:19:03.494 * Background saving started by pid 30
immich_redis | 30:C 16 Jul 2022 12:19:03.518 * DB saved on disk
immich_redis | 30:C 16 Jul 2022 12:19:03.519 * RDB: 0 MB of memory used by copy-on-write
immich_redis | 1:M 16 Jul 2022 12:19:03.594 * Background saving terminated with success
immich-server_1 | [Nest] 8 - 07/16/2022, 12:19:59 PM LOG [WebsocketConnectionEvent] New websocket connection: z53ryBpMZa_FtYgrAAAX
immich-server_1 | [Nest] 8 - 07/16/2022, 12:20:03 PM LOG [WebsocketConnectionEvent] New websocket connection: qYMY5uygIq9azGJJAAAa
immich-server_1 | [Nest] 8 - 07/16/2022, 12:20:03 PM LOG [WebsocketConnectionEvent] New websocket connection: RAGEasHPkAwFGVWcAAAb
immich-server_1 | [Nest] 8 - 07/16/2022, 12:20:48 PM LOG [WebsocketConnectionEvent] Client RAGEasHPkAwFGVWcAAAb disconnected from Websocket
immich-server_1 | [Nest] 8 - 07/16/2022, 12:21:13 PM LOG [WebsocketConnectionEvent] Client qYMY5uygIq9azGJJAAAa disconnected from Websocket
immich-server_1 | [Nest] 8 - 07/16/2022, 12:21:34 PM LOG [WebsocketConnectionEvent] Client z53ryBpMZa_FtYgrAAAX disconnected from Websocket
immich_redis | 1:M 16 Jul 2022 12:35:34.015 * 100 changes in 300 seconds. Saving...
immich_redis | 1:M 16 Jul 2022 12:35:34.015 * Background saving started by pid 31
immich_redis | 31:C 16 Jul 2022 12:35:34.073 * DB saved on disk
immich_redis | 31:C 16 Jul 2022 12:35:34.073 * RDB: 0 MB of memory used by copy-on-write
immich_redis | 1:M 16 Jul 2022 12:35:34.115 * Background saving terminated with success
....by the way ...i am testing it wich 3 photos which i like to backup
@MrColumbo commented on GitHub (Jul 16, 2022):
sorry ....i noticed that somehow in my environment the backup from the android client does not even work when I do not use a reverse proxy .......sorry ....somehow I was assuming that this is probably related to the reverse proxy but it turns out I was wrong.
@alextran1502 commented on GitHub (Jul 16, 2022):
@MrColumbo If you have problems with using the app, please open a new issue and provide the required info, I will take a look at your setup
@bo0tzz commented on GitHub (Aug 10, 2022):
I believe with the latest release, this should now be resolved.
@spammads commented on GitHub (Aug 17, 2022):
I dont know if its just me.
Mobile works.
But web does not authenticate me.
If I log in with my credentials I get logged in as undefined.
Configuration-wise I deleted the vite-server-endpoint-directive in the env-file.
The rest is as before.
@alextran1502 commented on GitHub (Aug 17, 2022):
@CKranebitter did you perform
docker-compose pullto update the containers?@spammads commented on GitHub (Aug 17, 2022):
I am using docker swarm.
Therefore I removed all immich-services and deployed via a rerun of my stack file.
I assume that’s basically the same as with
docker-compose pullas new images get pulled.@2600box commented on GitHub (Aug 21, 2022):
I just did a fresh install so that it is available at https://immich.domain.tld which works happily on the browser, but not in the ios app.
I have the HAProxy connect to port 2283 and expose the subdomain on port 443 and no mention of the api url. Is that necessary?
The only error given by the app is "Error logging you in, check server url, email and password"
If I add api with https://immich.domain.tld/api it still does not work...
Is there something else I should do?
Thanks
@bo0tzz commented on GitHub (Aug 21, 2022):
Are you on the latest version of the app and server? If you go to https://immich.domain.tld/api/server-info, what result do you get? (I would expect the api to be fine since the web app apparently works, but just to be sure)
@2600box commented on GitHub (Aug 21, 2022):
This is the api response through the browser
{"diskAvailable":"475.0GB","diskSize":"499.9GB","diskUse":"24.8GB","diskAvailableRaw":510185046016,"diskSizeRaw":536870912000,"diskUseRaw":26685865984,"diskUsagePercentage":4.97}and I am using the default docker-compose with
altran1502/immich-server:releaseand doing adocker compose pullsaysSkipped - Image is already present locallyFor the app version, I am using the one from app store 1.24.0 - I could not find a testflight. Do I need to build from source with xcode?
Edit: I think I must have made a typo somewhere. It is working now. Cheers
@alextran1502 commented on GitHub (Aug 21, 2022):
@2600box if it works on the browser then there should be no problem working on the phone. Can you make sure you have enter the url and the username, password correctly?
@2600box commented on GitHub (Aug 21, 2022):
Yeah, I think it must have been a typo on my part. App connects now.
Though I think I can't use it because I have my photo storage optimised with icloud.
@spammads commented on GitHub (Aug 22, 2022):
Still getting 500 status codes, when i log in:


I guess this is because – as mentioned before – I use docker swarm.
Hence my immich-server-container has the docker-hostname:
immich_server_ck.In the Web-Server-Container the Server-Container-Adress is hardcoded in
web/src/api/api.ts:So I would need a possibility to set this via env-file-variable or something.
Sorry for my derivative setup.
Would be really great if there was a way to solve this
@bo0tzz commented on GitHub (Aug 22, 2022):
I think this was a bit of collateral damage when removing VITE_SERVER_ENDPOINT for the frontend. I agree that address should not be hardcoded.
@nando2301 commented on GitHub (Nov 8, 2022):
I created a Docker Container from immich and putted it behind HAProxy
I configured this 2 ACLs:
acl path_is_immich url_beg /immich
acl path_is__app url_beg /_app
use_backend immich if path_is_immich
use_backend immich if path_is__app
And it results in this error:
immich is great, thanks for help.
@spammads commented on GitHub (Nov 16, 2022):
With the possibility to set the Dns of the services via Environment I can again access Immich. Thanks for the great work guys. Closing this one.
@herculespt commented on GitHub (Jan 27, 2023):
hi people!
If anybody could help me i would appreciate.
I have setup docker in windows 10, installed the Immich with default parameters for testing.
Nginx installed also.
In localhost:2283, all is working fine even in the phone side with the app.
Then, outside the "home" network, i cannot access both. I have opened ports on my router just in case, ports 3000 to 3002 and 2283. I added a DDNS in my domain setup with "home.mydomain.pt". Then in Nginx i have setup a Host with: source: "home.mydomain.pt" and Destination as: 192.168.x.x:2283.
Result: nothing works outside home network, so over the internet i cannot access either Immich Web or the App.
Can anyone help me figure this out? I'm around this Immich thing about a week... Bcs i would like to have it for my personal use...
@blmhemu commented on GitHub (Jan 27, 2023):
I am assuming, home.mydomain.pt points to 192.168.x.x:2283 ? If that is the case, you are pointing it to wrong ip. 192.* is reserved for private ips. You first need to check if you actually get public ip, if so point it to that public ip. But if you are behind NAT, you need to use wireguard / tailscale etc.