500 when accessing web server URL
when accessing the web server I'm getting the response "500 self-signed certificate", my config is this:
am I doing something wrong here?
62 Replies
(I'm currently only running the api server and the web server containers, trying to set this up corretly piece by piece)
Is there any reason why you are not using the recommended approach in https://immich.app/docs/install/docker-compose
Docker Compose [Recommended] | Immich
Docker Compose is the recommended method to run Immich in production. Below are the steps to deploy Immich with Docker Compose.
I run a nomad cluster
ah
@Alex this is like my kubernetes madness but even more off the rails ;)
okay, then I am not very familiar with it 😛
Far less off the rails than kubernetes, but thats another discussion 😄
@Tommy are you using a self signed cert for https?
no, the public url is running with a real cert, I have many self hosted services using the same domain and same cert
Where are you getting the error exactly? Can you paste the whole thing here (or send a screenshot)?
in the browser, but now it actually is timing out instead of complaining about the cert:

so what's happening is that I'm trying to access
https://immich.mydomain.com
and that 500 above is the response, the port there is the api server, so the request to the api seems to be timing outDo the container logs say anything interesting?
nothing at all, the api hasn't logged anything since starting up, same with the web server
the web server doesn't seem to be responding properly, if I go to the ip:port for it on the host, currently
curl http://192.168.1.10:22324
the request hangs
do I need to have the microservices etc running in order to get a response from the web server?
apart from the api server that isHmm good question, can you try to get it up and running as well?
I've never ran each pieces individually
is
http://192.168.1.10:22324
the server endpoint?
if so try curl http://192.168.1.10:22324/api/server-info/ping
is server log report startup correctly yet?I can get the server to respond "pong", it's not on that port though and the ports keep randomizing as I restart the job
but the server seems to be working, yes
ok so if you cannot pin the port how can you let other containers know the correct address to communicate?
templating
What if the server restarts but web doesn't?
restart condition
I thought you used kubernetes, shouldn't it be able to do the same?
Kubernetes doesn't randomise ports
basically what you do is this, slightly truncated:
if the template value, i.e. the port, changes it will trigger a restart of the container
I think I need to put this on hold for a bit, I'm traveling tomorrow and I have some things that need to get sorted before that.
can I pin this discussion somehow so that I can find my way back here later (in a week)?
sure
@Alex I'm back at this and I think I actually have everything up and running, just setting up my initial folders etc. One thing I still wanted to check though; do the microservice, machine-learning and web servers have any http health check endpoints like
/health
, (or like the api server which I'm checking with /server-info/ping
)? Or do they just support a tcp check, i.e. pinging the port?
@bo0tzz maybe you know as well?okay, I'm seeing one other issue, the thumbnails and viewing photos on the web page don't seem to be working. does immich need some cors configuration, or what is the likely cause of this?

If you click one, can you view the full photo?
If yes -> thumbnails haven't been generated, rerun the job from the admin panel
If no -> Check server logs for errors
no, clicking them shows the same "broken" icon
neither the web or the api server are logging any errors
the web server doesn't log anything at all, it just starts with "listening to port 0.0.0.0:3000" and that's it, the api server logs web socket connections coming and going, but there are no errors
That seems unusual 🤔
Can you set
LOG_LEVEL=verbose
, restart the containers, and try again?also if I inspect network in the browser, there are no errors there either
I set the log level to verbose on the api and web servers, there's still no logging from the web container, and the only thing I see as debug log from the api server is this:
Can you try clearing your browser cache?
running in an incognito window, same thing;

here's my entire config if there's anything obvious I've done wrong: https://pastebin.com/yt0mE0Tn
Pastebin
locals { immich_tag = "v1.69.0"}job "immich" { datacenters = ["ma...
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
Can you attach to the server container and make sure that the upload folder has content in it?
Do you see the common dir in the upload folder such as library, encoded-video and thumbnail?
that's all there is in
/upload
so there is an /upload/upload
folder which seems a bit oddyeah that is file
the upload folder is where the file just arrived before getting moved to the library
The root
/upload
is a bit of legacy naming :PSo you should have these folder

you don't have thumbs folder for some reason
that is why the thumbnail doesn't show up
Can you try going to the admin panel and running the generate thumbnails job?
tried that, it seems to run the job for like 3-5 seconds and then finishes, and no thumbnails show up
Are you running missing or all, what number of jobs does it show being queued, and what do the microservices logs say at that point?
all

okay, so at least here's an error
microservices is logging this:
a large amount of these errors are in the logs
Alright so none of the files are there at all
At this point you might want to just wipe the while instance and upload everything from scratch
so just to check, is this correct:
for
api
I have
and IMMICH_MEDIA_LOCATION=/upload
for microservices
I have volumes = ["/zpool/services/immich/upload:/usr/src/app/upload"]
and no env settingI think that should work but I'm not 100% certain
Maybe try mounting both to the same place just to be sure
hm, I think I'll set
IMMICH_MEDIA_LOCATION
for both the api and ms to /upload
, seems I missed doing that for ms
um.. okay, so I purged everything in these folders, but the broken thumbnails are still showing up in the UI
the file metadata is stored in the postgres db? I guess I need to nuke that as wellCorrect
nice, the thumbnails seem to work now
here's a very strange behavior I noticed earlier as well, the file counter in the backup view is buggy:

the remainder keeps going further and further into negative values
Yeah this is a known issue, you can clear the app cache and it would solve this issue
yeah I figured someone has to have seen this before
it is a cosmetic/state management bug that we have yet to pin point the cause
but overall it seems that the thumbnails work now, I can click the photos and they show up as well
just to circle back to my earlier question above, are there any health check endpoints for the microservices, ml and web containers?
No there is not
All right, tcp checks it is
Thanks for all the help, I think I'm all good to go 🙂
No problem Tommy, enjoy