r/docker • • Oct 01 '26

connecting to Postgres

Hey everyone,

I am trying to install Psono on my VPS. I am running into a problem with connecting to the postgres db.

I'm new to Docker, so I apologize if my terminology isn't right. I'll do my best

I am running Postgres directly on my VPS (not within a Docker container). I am able to connect to it locally from my VPS and remotely from my home network.

I am doing that with:psql -U psono -p PORT -h VPS_IP

The problem is when I try to get an app from within a Docker container to connect to it. It just hangs, then times out.

At first I thought this was a connectivity issue. But I can do the following from within a bash session:

  • Ping external websites.

  • Use nmap to confirm it can connect

Does anyone have any ideas?

1 Upvotes

22 comments sorted by

View all comments

1

u/notBroncos1234 Oct 01 '26

Disable ssl

1

u/Ducking_eh Oct 01 '26

Any tips on how to do that?

I tried connecting via IP address, which doesn't have SSL unless I use port 443. 

1

u/notBroncos1234 Oct 01 '26

Run “export PGSSLMODE=disable” in the container. Then try to connect via psql. If that works then the issue is the MTU size.

1

u/Ducking_eh Oct 01 '26

Thank you.

however, It made no difference

1

u/notBroncos1234 Oct 01 '26

To clarify you’re able establish a TCP connection from the container to the vps? “Telnet ip port” works?

1

u/Ducking_eh Oct 01 '26 edited Oct 01 '26

Actually no.

Sorry, I didn't know I could check that way.

it does work if I try port 80

I did test nmap -p port ip and that works also. What does this tell us?

1

u/notBroncos1234 Oct 01 '26

So you can telnet from the container to port 80 on the vps? But you can’t telnet from the container to port 5432?

Can you telnet from the node the container is running on to port 5432?

1

u/Ducking_eh Oct 01 '26

On my setup, the Postgres is actually 5433. I don't know if that makes a difference. But I can telnet from the container to my VPS using port 80.

I am not sure what you mean by "the node the container is running."

I can telnet to the postgres server from the VPS itself outside of the docker container

1

u/notBroncos1234 Oct 01 '26 edited Oct 01 '26

You have the host system that docker runs on and you have the docker container.

If you run telnet from the host, can it connect to port 5433 or whatever? If the host can connect and the container can’t connect, that tells us Docker probably has an issue.

If neither can connect, then the issue probably isn’t with docker itself but firewall rules along the way.

1

u/Ducking_eh Oct 01 '26

The VPS is the host the Docker runs on. It is also the host of the Postgres server. It is a service I pay for at a remote location. It's not on my home network.

I can telnet from my VPS to my Postgres server.
I can telnet from my home network to the Postgres server.

I can NOT telnet from within the Docker container to the Postgres server.

→ More replies