Self-host Baserow
An open-core Airtable alternative on Django and PostgreSQL: spreadsheet-style databases with an auto-documented REST API, plus an application builder, dashboards and automations, in one all-in-one Docker image.
Key facts
Pick Baserow when you want an Airtable alternative whose free edition is real open source: everything outside its `premium/` and `enterprise/` directories is MIT, and upstream says self-hosted Baserow has no row, storage or API request limits. The free edition includes grid, form and gallery views, webhooks, a REST API with auto-generated per-database docs, two-factor authentication, dashboards, an application builder and an automation builder, all on Django and PostgreSQL. The quickest install is one all-in-one container that runs the app, PostgreSQL, Redis and Caddy with automatic HTTPS. Upstream's DigitalOcean guide says 1 vCPU and 2 GB of RAM per app container at minimum; our 2 GB floor uses that figure. If you need kanban and calendar views without paying, NocoDB's Community edition includes them.
Follow the Baserow deploy guide →What you need
- Any VPS with at least 2048 MB of RAM
- A domain you control — most self-hosted setups need HTTPS in front of them
- Under an hour if you've used Docker before
Paid link — we earn a commission if you shop through it.
Install
Run these commands on your server:
# Baserow — the all-in-one image (app, PostgreSQL, Redis and Caddy in one container), per baserow.io/docs/installation/install-with-docker
docker run -d --name baserow \
-e BASEROW_PUBLIC_URL=https://baserow.example.com \
-e BASEROW_CADDY_ADDRESSES=:443 \
-v baserow_data:/baserow/data \
-p 80:80 -p 443:443 \
--restart unless-stopped \
baserow/baserow:2.3.4
# optional: -e DATABASE_URL=postgresql://user:pwd@host:port/db to use an external PostgreSQL (upstream recommends it for production)
# BASEROW_PUBLIC_URL must match the address you type in the browserWhat you take on
Baserow's docs are clear about where the free edition stops and what the all-in-one image leaves to you: