Unable to Access Baserow API, neither UI when altered the PUBLIC URL

Are you using our SaaS platform (Baserow.io) or self-hosting Baserow?

Self-hosted

If you are self-hosting, what version of Baserow are you running?

Current version.

If you are self-hosting, which installation method do you use to run Baserow?

docker run -d --name baserow -e BASEROW_PUBLIC_URL=http://host.docker.internal:85 -v C:\Docker\baser

What are the exact steps to reproduce this issue?

  1. Ran the Command:
    docker run -d --name baserow -e BASEROW_PUBLIC_URL=http://host.docker.internal:85 -v C:\Docker\baserow-data:/baserow/data -p 85:80 -p 443:443 --restart unless-stopped baserow/baserow:1.32.5

  2. Got the Link:
    http://host.docker.internal:85 (Refer: img_1)

  3. Clicked on it. And nothing Opened. Than tried to open it through localhost, but “Site not found” appeared. (Refer: img_2)

Attach screenshots, videos, or logs that demonstrate the issue.


Hi @soorty, welcome to the community!

Your Docker command sets BASEROW_PUBLIC_URL=http://host.docker.internal:85, but this hostname is typically only resolvable from within Docker containers, not from your browser. Is there a particular reason you need to use this url and not simply http://localhost:85?

Also, is port 85 open and available and not being used by a different service?

Thanks for the greetings!

The reason I’m not using http://localhost:85 directly is because I want to run n8n and Baserow in separate containers. A tutorial I followed on YouTube mentioned that if you want Docker containers to communicate with each other, you need to set Public URL of Baserow to host.docker.internal with env variable flag “-e”

Secondly, I also tried network bridging (through .yaml) , but that didn’t work either.

Thirdly, I’m a bit confused by the point where you mentioned that “hostname is typically only resolvable from within Docker containers.” In another tutorial I watched, the creator followed the exact same steps—running the Baserow command with the public URL set to http://host.docker.internal:85—and was able to access it over the web. I’ve attached the link to that tutorial below.

Source of that tutorial
Timestamp 4:52

Hi @soorty thanks for the further information. I’m by no means an expert in this myself.

I didn’t watch the entire video you linked but likely the creator of this video has either their system already had host.docker.internal mapped in their hosts file or their Docker/system configuration automatically resolved this hostname to the local machine.

The simplest solution is adding this single line to the hosts file:

127.0.0.1 host.docker.internal