How to Set Up Apache Superset with Docker
Last updated Apr 9, 2026

What Apache Superset Does and Why It Matters
Apache Superset is a free, open-source data exploration and visualization platform maintained by the Apache Software Foundation. It supports over 40 chart types, ships with a full SQL IDE called SQL Lab, and connects to virtually any SQL-speaking database through SQLAlchemy. As of April 2026, the project has more than 64,000 stars on GitHub and is used in production by companies including Airbnb, Dropbox, and Lyft.
For ops managers, analysts, and founders who need dashboards but do not want to pay for Tableau or Power BI licenses, Superset is the strongest open-source alternative available. It runs in a browser, requires no desktop install, and supports role-based access control out of the box.
Prerequisites
You need two things installed on your machine before starting: Docker and Docker Compose. Docker Desktop (available for macOS, Windows, and Linux) bundles both. Download it from docker.com and verify the install by running these commands in your terminal:
docker --version
docker compose version
You should see version numbers for both. Docker Desktop should be running with at least 6 GB of RAM allocated (you can check this under Settings > Resources).
Step 1: Clone the Superset Repository
Open a terminal and run:
git clone https://github.com/apache/superset.git
cd superset
This downloads the full Superset source code, including the Docker Compose configuration files you need.
Step 2: Launch Superset with Docker Compose
From inside the superset directory, run:
docker compose -f docker-compose-image-tag.yml up -d
This pulls the official Superset Docker images, starts the web server, a PostgreSQL metadata database, a Redis cache, and a Celery worker for async queries. The first run takes 5 to 10 minutes depending on your internet speed.
Once the containers are running, open your browser and go to http://localhost:8088. You should see the Superset login page. The default credentials are admin / admin.
Step 3: Connect Your First Database
Superset does not store your data. It connects to external databases and queries them directly. The Docker Compose setup includes a sample PostgreSQL database called "examples" that is pre-configured, so you already have data to work with.
To connect your own database, click the + button in the top-right corner, select Data, then click Connect Database. A modal window appears with a list of supported database types. Select yours (PostgreSQL, MySQL, Snowflake, BigQuery, and dozens of others are supported), then enter the SQLAlchemy connection URI.
A standard PostgreSQL URI looks like this:
postgresql://username:password@hostname:5432/database_name
Click Test Connection to verify, then click Connect to save. Your database is now available for querying in Superset.
Step 4: Register a Dataset
Superset works with datasets, which are pointers to specific tables or views in your connected databases. Navigate to Data > Datasets and click + Dataset. Use the dropdown menus to select your database, schema, and table, then click Add.
Your table columns will appear in the left sidebar when you explore the dataset. Superset automatically detects column types and lets you mark columns as temporal (for time-series analysis) or filterable.
Step 5: Create Your First Chart
Click on the dataset name from the Datasets list. This opens the Explore view, which is a no-code chart builder. The left panel shows your available columns and metrics. The center panel has two tabs: Data (where you configure the query) and Customize (where you style the chart).
Pick a chart type from the visualization picker at the top. For a first chart, Time-series Bar Chart is a good starting point. Select your time column, pick a metric (like COUNT(*) or SUM(revenue)), and optionally add a dimension to group by. Click Run Query to render the chart.
When you are happy with the result, click Save. You can either add it to an existing dashboard or create a new one. Select Save & go to Dashboard to see the chart in context.
Step 6: Build and Publish a Dashboard
Dashboards in Superset are grid-based layouts of charts. After saving your first chart to a new dashboard, you can add more charts by clicking Edit Dashboard in the top-right corner. Drag charts from the sidebar into the grid, resize them by pulling the bottom-right corner, and rearrange them freely.
Superset supports cross-filtering between charts, native filter bars for global date and category filters, and URL parameters for embedding dashboards in other applications. You can set a dashboard to "Published" by clicking the Draft button near the title, which makes it visible to all users with the right dataset permissions.
Step 7: Set Up SQL Lab for Ad-Hoc Queries
SQL Lab is Superset's built-in SQL editor. Access it from the top navigation bar under SQL > SQL Lab. It supports syntax highlighting, autocomplete, query history, and result visualization. You can write a query, preview results, and save the output as a new dataset for charting without leaving the browser.
This is particularly useful when you need to join tables, filter data, or create computed columns before building a visualization. SQL Lab supports Jinja templating for dynamic queries and parameterized dashboards.
Performance Tips for Production
The default Docker Compose setup is designed for local development. For production deployments, make these changes. First, switch the metadata database from the bundled SQLite or PostgreSQL container to an external managed database. Second, configure the Redis cache for query result caching by setting CACHE_CONFIG in superset_config.py. Third, allocate at least 2 CPU cores and 4 GB RAM to the Superset web worker.
Superset's official documentation includes Helm charts for Kubernetes deployments, which are the recommended approach for teams that need high availability and auto-scaling. According to the Apache Software Foundation, production instances handling 500 or more concurrent users typically run 4 to 8 web workers behind a load balancer.
When to Consider an Alternative
Superset is best for teams that have someone comfortable with basic SQL and Docker. If your team has zero technical resources and needs fully managed dashboards from spreadsheet data in under five minutes, a tool like VSLZ AI can generate charts and statistical analysis from a file upload with no database setup or SQL required.
For teams that want full control over their data infrastructure, Superset remains the most capable open-source BI platform available in 2026.
Summary
Apache Superset gives you a production-grade BI platform for free. The Docker Compose setup gets you from zero to a working dashboard in under 15 minutes. Connect your database, register a dataset, build a chart in the Explore view, and publish your dashboard. For ad-hoc analysis, SQL Lab provides a full query editor in the browser. The project's 64,000+ GitHub stars and backing by the Apache Software Foundation make it a safe long-term investment for any data team.
FAQ
What databases does Apache Superset support?
Superset connects to any database that has a SQLAlchemy-compatible driver. This includes PostgreSQL, MySQL, MariaDB, SQLite, Microsoft SQL Server, Oracle, Snowflake, Google BigQuery, Amazon Redshift, Amazon Athena, Databricks, ClickHouse, Apache Druid, Trino, Presto, DuckDB, and over 30 others. You can also connect to CSV files by uploading them directly through the Superset interface.
How much RAM does Apache Superset need to run locally?
Docker Desktop should have at least 6 GB of RAM allocated for a smooth local Superset experience. The Superset web server, PostgreSQL metadata database, Redis cache, and Celery worker each consume memory. On machines with 8 GB of total RAM, you may experience slow performance. 16 GB of system RAM is recommended for comfortable local development.
Is Apache Superset free for commercial use?
Yes. Apache Superset is licensed under the Apache License 2.0, which allows free commercial use, modification, and distribution. There are no per-user fees, no feature gating, and no telemetry that phones home. Companies like Airbnb and Lyft run Superset in production at scale without paying licensing costs. Managed hosting options like Preset.io exist for teams that prefer not to self-host.
Can non-technical users build dashboards in Superset?
The Explore view is a no-code chart builder that lets users create visualizations by selecting options from dropdown menus. No SQL knowledge is required to build charts in Explore. However, initial setup (Docker installation, database connections) does require some technical ability. SQL Lab, the built-in query editor, is available for users who want to write custom queries but is not mandatory for dashboard creation.
How do I update Apache Superset to the latest version?
If you installed Superset via Docker Compose, pull the latest images by running docker compose pull from the superset directory, then restart with docker compose up -d. This downloads the newest release and restarts all containers. Your dashboards and database connections are stored in the metadata database and persist across upgrades. Always check the release notes on GitHub for any breaking changes or required database migrations before upgrading.


