Fresh install not working

Hello,
I’m trying to do a fresh self-hosted install of Baserow following those instructions found here:

git clone --depth=1 --branch master https://gitlab.com/bramw/baserow.git
cd baserow
docker-compose up -d

I got the following error:

invalid interpolation format for x-backend-variables.REDIS_PASSWORD.
You may need to escape any $ with another $.
required variable REDIS_PASSWORD is missing a value:

I did this:

curl -o .env https://gitlab.com/bramw/baserow/-/raw/master/.env.example

I copied .env.example to .env,
I edited .env with these values (not sure what I should use):

SECRET_KEY=baserow
DATABASE_PASSWORD=baserow
REDIS_PASSWORD=baserow

I then got the following error when running docker-compose up -d:

Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:80 -> 0.0.0.0:0: listen tcp 0.0.0.0:80: bind: address already in use

I added the following line to .env:

WEB_FRONTEND_PORT=3000

Then ran docker-compose up -d again.
This time I get no errors in the console, but when I go to http://localhost:3000 in my browser, it displays this message:

Server error
An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details.

What should I do?
Where are the logs?

(Using macOS and Opera.)

Hey :slight_smile:

So the error you got here:

Error response from daemon: Ports are not available: exposing port TCP 0.0.0.0:80 -> 0.0.0.0:0: listen tcp 0.0.0.0:80: bind: address already in use

Means that you already had something running on port 80. I assume that you might have had another application running or maybe another Baserow running.

What you can try, is you can make sure that nothing is running on port 80, undo your env var change of WEB_FRONTEND_PORT=3000 and try again.

See if that works :slight_smile:

Thank you. It seems there was indeed a local web server running. I killed it with:

sudo apachectl stop

Then edited Baserow’s .env by commenting out:

WEB_FRONTEND_PORT=3000

#WEB_FRONTEND_PORT=3000

And restarted Baserow:

docker-compose down 
docker-compose up -d

Then I went to http://localhost:80.
But I still get the same error:

Server error
An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details.

Hi @palpalpalpal ,

Is there any reason why you didn’t use the simpler and easier docker-compose provided at the top of that page you linked?

I’d strongly recommend using it instead by:

  1. Delete all your existing baserow containers and databases permanently docker-compose down -v. never ever run this again unless you want to delete all of your baserow data permanently
  2. Delete your .env file so it doesn’t clash with the simpler version.
  3. Edit docker-compose.yml and replace it entirely with the following:
version: "3.4"
services:
  baserow:
    container_name: baserow
    image: baserow/baserow:1.12.1
    environment:
      BASEROW_PUBLIC_URL: 'http://localhost'
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - baserow_data:/baserow/data
volumes:
  baserow_data:
  1. docker-compose up -d
  2. Now you should be able to access Baserow at http://localhost.
1 Like

Hi @nigel,
Thanks for your answer, I tried that and it works!

I did not use that part of the instructions because, simply put, I didn’t know what to do with them. I’m not familiar with Docker and couldn’t make sense of most of the documentation for installing Baserow, actually.

The page Install with Docker begins with a docker run command that got me Unable to find image 'baserow/baserow:1.12.1' locally, so I guess that command is not meant for installing Baserow but merely launching it – which is not what one needs when beginning reading a page titled “Install with Docker”.

So I fell back on the next page in the documentation, Install with Docker compose. Which begins with the configuration you provided… but says that “If you use this config then you should instead refer to the Install with Docker guide”. Again, a dead end. Anyway, I wouldn’t know where to put those lines of configuration.

Thus I tried whatever I could pick from the rest of the instructions. Actually I had an old (pre-1.8.2) version of Baserow installed, but couldn’t manage to upgrade it by following the instructions either.

Docker prints Unable to find image XYZ locally whenever you haven’t already downloaded that image. It isn’t an error. Docker will just go and download our official images after printing that text to the screen. Installing any piece of software using docker will show this text in this situation.

I would strongly suggest following some sort of Docker tutorial before working with any docker images and commands, otherwise you can easily shoot yourself in the foot not understanding what is going on.

Thanks for the clarification. After getting the Unable to find image XYZ locally message, I was under the impression that nothing more happened, and I think there were no messages like those usually shown when downloading stuff, or when running docker-compose up now that my installation is working. I guess I messed up somewhere.