I don’t know when it started, I usually check my instance through the Voyager app and it never showed a problem, but I’m suddenly getting “server error” and 502 bad gateway errors on my instance on desktop. I haven’t made any major changes (read, any at all) since I last confirmed it worked on desktop.
Checking the logs I don’t see any obvious proxy issues but I am getting weird connection issues in lemmy-ui
:
TypeError: fetch failed
lemmy-lemmy-ui-1 | at Object.fetch (node:internal/deps/undici/undici:11730:11)
lemmy-lemmy-ui-1 | at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
lemmy-lemmy-ui-1 | cause: ConnectTimeoutError: Connect Timeout Error
lemmy-lemmy-ui-1 | at onConnectTimeout (node:internal/deps/undici/undici:6869:28)
lemmy-lemmy-ui-1 | at node:internal/deps/undici/undici:6825:50
lemmy-lemmy-ui-1 | at Immediate._onImmediate (node:internal/deps/undici/undici:6857:13)
lemmy-lemmy-ui-1 | at process.processImmediate (node:internal/timers:478:21) {
lemmy-lemmy-ui-1 | code: 'UND_ERR_CONNECT_TIMEOUT'
lemmy-lemmy-ui-1 | }
lemmy-lemmy-ui-1 | }
Where on earth can I even begin to address this?
This is an issue that has been present for a long time but recently came back worse with the 0.19 update. It is caused by lemmy-ui failing to load the site icon and it typically happens whenever the the docker container is started/restarted while you have a site icon set. The only fix at the moment is to manually delete the database entry which contains a link to the site image.
Check this GitHub link for instructions. https://github.com/LemmyNet/lemmy-ui/issues/1530#issuecomment-1605781461
Once I get home from work this afternoon I will post my docker-compose.yml which has an extra container that automatically deletes the database entry then resets it.
EDIT: Here is the extra container from my docker-compose.yml
icon-fix: image: iconfix:latest command: - /bin/sh - -c - | sleep 10 # Remove Site Icon - be sure to set your postgres password PGPASSWORD=<POSTGRESS PASSWORD HERE> psql -U lemmy -h postgres -d lemmy -c "UPDATE site SET icon = NULL WHERE id = 1;" # Refresh Site - replace example.com with your sites domain curl -f -sS -H "Host: example.com" http://lemmy-ui:1234 > temp.html # Reset Site Icon - Set your postgres password and replace the URL with one that points to your icon PGPASSWORD=<POSTGRESS PASSWORD HERE> psql -U lemmy -h postgres -d lemmy -c "UPDATE site SET icon = 'https://example.com/pictrs/image/2cc85182-5739-4c86-b982-94fc913e80d3.webp' WHERE id = 1;" depends_on: - postgres
And here is the Dockerfile for building the
iconfix
imageFROM docker.io/postgres:latest RUN apt update RUN apt install -y curl