Large Files failing to upload (nginx?)

I have no clue where this problem stems from whatsoever. my best guess is that something in my nginx is broken, but I genuinely have no clue. I'm having problems specifically with large .mp4's failing to upload for no reason. I'm running a dockerized nginx reverse proxy manager, running by itself on a whole separate machine, other than that, should be nothing stopping it, my router is exposing nginx on 80, and my DNS is Cloudflare (proxy off), it only seems to break for big files, >9Gb. it breaks on both web and using immich-go, sometimes it works on one and not the other, all very weird and random, haven't noticed any differences whatsoever. (it usually works when uploading locally) Files: docker-composeimmich = docker compose for immich docker-composegngx = docker-compose for nginx nginx.txt = .conf file for my nginx setup for pointing to immich photo of verbose logs at the time of failure attached
22 Replies
Immich
Immich5mo ago
:wave: Hey @supermanisdum, Thanks for reaching out to us. Please carefully read this message and follow the recommended actions. This will help us be more effective in our support effort and leave more time for building Immich :immich:. References - Container Logs: docker compose logs docs - Container Status: docker ps -a docs - Reverse Proxy: https://immich.app/docs/administration/reverse-proxy - Code Formatting https://support.discord.com/hc/en-us/articles/210298617-Markdown-Text-101-Chat-Formatting-Bold-Italic-Underline#h_01GY0DAKGXDEHE263BCAYEGFJA Checklist I have... 1. :ballot_box_with_check: verified I'm on the latest release(note that mobile app releases may take some time). 2. :ballot_box_with_check: read applicable release notes. 3. :ballot_box_with_check: reviewed the FAQs for known issues. 4. :ballot_box_with_check: reviewed Github for known issues. 5. :ballot_box_with_check: tried accessing Immich via local ip (without a custom reverse proxy). 6. :ballot_box_with_check: uploaded the relevant information (see below). 7. :ballot_box_with_check: tried an incognito window, disabled extensions, cleared mobile app cache, logged out and back in, different browsers, etc. as applicable (an item can be marked as "complete" by reacting with the appropriate number) Information In order to be able to effectively help you, we need you to provide clear information to show what the problem is. The exact details needed vary per case, but here is a list of things to consider: - Your docker-compose.yml and .env files. - Logs from all the containers and their status (see above). - All the troubleshooting steps you've tried so far. - Any recent changes you've made to Immich or your system. - Details about your system (both software/OS and hardware). - Details about your storage (filesystems, type of disks, output of commands like fdisk -l and df -h). - The version of the Immich server, mobile app, and other relevant pieces. - Any other information that you think might be relevant. Please paste files and logs with proper code formatting, and especially avoid blurry screenshots. Without the right information we can't work out what the problem is. Help us help you ;) If this ticket can be closed you can use the /close command, and re-open it later if needed.
supermanisdum
supermanisdumOP5mo ago
my immich .env
Immich
Immich5mo ago
Successfully submitted, a tag has been added to inform contributors. :white_check_mark:
supermanisdum
supermanisdumOP5mo ago
ermmm, testing rn and the local one failed while the other one didn't to be fair the local's file is much bigger (24gb vs 15gb), but i set the timeout to be --client-timeout=5h in immich-go so i have no idea why it would timeout after only 32 minutes. Is there a default upload timeout on the immich server side when uploading locally? local vs routed through the nginx proxy
No description
No description
supermanisdum
supermanisdumOP5mo ago
my immich-go command for reference, using immich-go v0.23.0-RC3:
immich-go upload from-folder --server=http://192.168.1.46:2283 --api-key=(key) --client-timeout=5h --log-level=DEBUG D:\Videos\Projects\
immich-go upload from-folder --server=http://192.168.1.46:2283 --api-key=(key) --client-timeout=5h --log-level=DEBUG D:\Videos\Projects\
supermanisdum
supermanisdumOP5mo ago
also for the record i literally just uploaded a 20gb file locally an hour ago
No description
supermanisdum
supermanisdumOP5mo ago
now the one routed through the proxy just failed, 502 error supposedly
No description
supermanisdum
supermanisdumOP5mo ago
btw, when I say proxy, this is all technically still on the local network, just edited my hosts file to make my domain point to the local ip of my nginx reverse proxy, so a 502 on my local network seems really weird considering nginx is still up and everything is still accessible through it. Did it just hiccup for a few milliseconds and break the upload? nothing relevant at all in nginx logs
Zeus
Zeus5mo ago
There’s a lot going on here but have you tested connecting to http://immichip:2283 ? no proxy, no DNS
supermanisdum
supermanisdumOP5mo ago
yup, that's what i meant by local lol if u look at the top of the first screenshot here, you'll see my local ip with the port
supermanisdum
supermanisdumOP5mo ago
lol yup they both failed, through proxy and local (direct)
No description
supermanisdum
supermanisdumOP5mo ago
only thing immich server logs are showing
No description
supermanisdum
supermanisdumOP5mo ago
cant belive I didn't look at web console
No description
Mraedis
Mraedis5mo ago
Is your browser being stupid? 👀 which browser is it
supermanisdum
supermanisdumOP5mo ago
Tried both Firefox and chrome 😭
Mraedis
Mraedis5mo ago
Sorry I totally missed this @supermanisdum but you didn't try direct IP to the immich server, is that correct? If so, did you set a max body size at all? Something like client_max_body_size 25000M; in nginx
supermanisdum
supermanisdumOP5mo ago
Yes 😭 Yes I tried direct to the server Sorry if my terminology is off, but local = direct to the server Proxy = still from inside my home network but routed through my nginx server through my hosts file ^as mentioned Also I included my nginx config in the first post, yes, client body is set correctly as far as I can tell Npm config:
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_max_temp_file_size 90000m; # Set to 45GB
client_max_body_size 0; # Unlimited body size
# Extend timeout limits to prevent upload interruptions
client_body_timeout 3600s; # 1 hour timeout for reading the body
client_header_timeout 3600s; # 1 hour timeout for reading headers
send_timeout 3600s; # 1 hour timeout for sending response
proxy_read_timeout 3600s; # 1 hour timeout for reading from upstream
proxy_send_timeout 3600s; # 1 hour timeout for sending to upstream
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_max_temp_file_size 90000m; # Set to 45GB
client_max_body_size 0; # Unlimited body size
# Extend timeout limits to prevent upload interruptions
client_body_timeout 3600s; # 1 hour timeout for reading the body
client_header_timeout 3600s; # 1 hour timeout for reading headers
send_timeout 3600s; # 1 hour timeout for sending response
proxy_read_timeout 3600s; # 1 hour timeout for reading from upstream
proxy_send_timeout 3600s; # 1 hour timeout for sending to upstream
hukhuk
hukhuk5mo ago
I'm having a somewhat similar issue, but for me the issues seem to start already with videos of around 400MB (just installed, backed up 3k photos and 100 videos, but maybe 10 or so videos won't upload successfully from the android app it seems, and the logs also keep showing request error while uploading file)
Mraedis
Mraedis5mo ago
Cloudflare has a 100MB limit, assuming you're using it
hukhuk
hukhuk5mo ago
I'm not, I'm running a local traefik in front of the immich server though
Mraedis
Mraedis5mo ago
You should read this and get some ideas perhaps: https://community.traefik.io/t/increase-maximum-body-size-without-buffering/15928/4 If not, make your own topic 😛
hukhuk
hukhuk5mo ago
thanks, will take a look! @Mraedis thanks! it indeed fixed my issue (I do have another one now, seemingly it always fails on the first transcoding but seems to work fine after a retry, but that's certainly a different topic :))

Did you find this page helpful?