(Using https://github.com/LemmyNet/lemmy-ansible)
The ansible-playbook command itself connected to the VPS and completed without any errors or warnings. This is on a completely fresh VPS with Ubuntu Server 22.04.
I created all directories needed in the guide, and the only file I modified was the inventory/hosts file - filling in the username/domain for SSH, domain name, contact email and adding the location of the private key for SSH.
The guide didn’t note any changes to config.hjson I needed to make, so I copied that file as requested but left it with the default content. I’m thinking if I missed something it’s most likely there.
I couldn’t access the web UI and with some investigation I found the dessalines/lemmy:0.17.4 (backend) container is continually restarting, apparently because it can’t reach the database -
sudo docker container logs <id>
returns the following:
thread 'main' panicked at 'Error connecting to postgres://lemmy:PasswordRedacted@postgres:5432/lemmy', crates/db_schema/src/utils.rs:161:56
I’m not sure what to do at this point, so I would be very appreciative of any help with this issue.
This alternative installer might be a way around this issue: https://github.com/ubergeek77/Lemmy-Easy-Deploy
Wiped the VPS clean, new 22.04 server install.
Deployed using that installer.
Exact same issue. The lemmy container cannot reach the database and continually restarts. I’ll post some logs, but they’re practically identical to what I posted before:
lemmy container logs:
`thread 'main' panicked at 'Error connecting to postgres://lemmy:PasswordRedacted@postgres:5432/lemmy', crates/db_schema/src/utils.rs:161:56
sudo docker ps
output:CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9eaa62ea6f99 caddy:latest "caddy run --config …" 12 minutes ago Up 12 minutes 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp, 443/udp, 2019/tcp lemmy-easy-deploy-proxy-1 a10009ed128d dessalines/lemmy-ui:0.17.4 "docker-entrypoint.s…" 12 minutes ago Up 12 minutes lemmy-easy-deploy-lemmy-ui-1 a166b1486d51 dessalines/lemmy:0.17.4 "/app/lemmy" 12 minutes ago Restarting (101) 41 seconds ago lemmy-easy-deploy-lemmy-1 08329653260b asonix/pictrs:0.3.1 "/sbin/tini -- /usr/…" 12 minutes ago Up 12 minutes 6669/tcp, 8080/tcp lemmy-easy-deploy-pictrs-1 51af8f312511 postgres:15-alpine "docker-entrypoint.s…" 12 minutes ago Up 12 minutes lemmy-easy-deploy-postgres-1
well, that rules out your local system and ansible, at least. It seems like there’s an inability for the docker containers to reach postgres definitely at the install and probably at runtime - can we check this?
first let’s make sure the postgres container is on the network and has an address:
sudo docker exec -it <yourinstance>_postgres_1 /bin/sh
once you’re on the container
ifconfig
which should return on the second line: inet addr:172.18.0.4 (or similar ipV4 address)
exit
to return to the host and let’s test connecting from the host :nc -zv 172.18.0.4 5432
(use IP from the DB container)Ubuntu host should respond something like : Connection to 172.18.0.4 5432 port [tcp/postgresql] succeeded!
now let’s try the containers
sudo docker exec -it <yourinstance>_lemmy-ui_1 /bin/sh
now from that container test connectivity to postgres:
nc -zv 172.18.0.4 5432
(use IP from the DB container)now the other
sudo docker exec -it <yourinstance>_lemmy_1 /bin/sh
on the docker containers the nc command should return something like
172.18.0.4 (172.18.0.4:5432) open
is that working?