Video coming soon…

📈 Setup Redash

Placeholder description.

⚠️ This script is provided for demo and testing purposes only. Not intended for production use.

📦 Resources & Setup Scripts

Grab the automated bash script from GitHub to follow along with the video.

Automated install script.
View on GitHub

Quick Install:

wget https://raw.githubusercontent.com/mhmdali94/Docker/main/analytics/redash/redash-ubuntu.sh
chmod +x redash-ubuntu.sh
sudo bash redash-ubuntu.sh

Tutorial Steps

1 Download the Script

wget https://raw.githubusercontent.com/mhmdali94/Docker/main/analytics/redash/redash-ubuntu.sh

2 Make it Executable

chmod +x redash-ubuntu.sh

3 Run the Installer

The script installs Docker if needed and deploys the full Redash stack (web server, workers, PostgreSQL, and Redis) using Docker Compose. First start may take 2–3 minutes.

sudo bash redash-ubuntu.sh

4 Access the Web UI

Open your browser and navigate to:

http://<your-server-ip>:5000

5 Create Admin and Connect a Data Source

On first access, Redash prompts you to create an admin account (name, email, password, organization name). After signing in, go to Settings → Data Sources → New Data Source to connect your first database. Write your first SQL query, pick a visualization type, and add it to a dashboard.

Ports Used

PortPurpose
5000Redash Web UI
5432PostgreSQL — internal only, not exposed
6379Redis — internal only, not exposed

Overview

Redash is an open-source SQL-first business intelligence and data visualization platform. Its core workflow is simple: write a SQL query against your database, pick a visualization (bar chart, pie, map, counter, table), and pin it to a shared dashboard. Unlike Metabase which abstracts SQL away, Redash embraces it — it is built for teams that already know SQL and want a clean way to share queries, results, and charts without setting up a full BI server. Redash connects to over 35 data sources including PostgreSQL, MySQL, Microsoft SQL Server, MongoDB, Google BigQuery, Amazon Redshift, Snowflake, Elasticsearch, and more. Queries can be scheduled to run automatically and dashboards update in real time.

Why Use It

Data analysts on every team have a pile of SQL queries they run manually and share as screenshots or CSV exports. Redash turns those queries into living dashboards. Write the query once, add it to a dashboard, and every stakeholder can see the latest data without bothering the analyst. Query results can be refreshed on a schedule (every 5 minutes, hourly, daily) so dashboards always show current data. Redash's query parameters feature lets non-technical users filter dashboards by date range, customer, or region without touching SQL. For teams that have sensitive data they cannot send to a SaaS tool, self-hosted Redash keeps all query results and credentials on their own server.

When You Need It

    Who Should Use It

      Real Use Cases

        Main Features

          How to Use After Installation

            Security Best Practices

              Ports and Firewall Notes

              Redash web UI runs on port 5000. In production put it behind Nginx Proxy Manager so only port 443 (HTTPS) is exposed. The internal PostgreSQL (metadata) runs on 5432 and Redis on 6379 — both must stay on the internal Docker network. Your data source databases (the ones Redash queries) must be reachable from the Redash container — not necessarily from the internet. Configure ufw allow 443, ufw allow 80, and deny all other inbound.

              Backup and Maintenance

                Common Mistakes

                  Troubleshooting

                    Alternatives

                    Metabase is the most popular alternative — it has a no-SQL question builder that lets non-technical users explore data without writing SQL, making it more accessible to business users. Apache Superset is more powerful and supports more visualization types but is significantly more complex to set up. Grafana is excellent for time-series metrics and infrastructure monitoring but is not designed for business analytics from transactional databases. Lightdash is a dbt-integrated BI tool for teams already using dbt models. For pure SQL power users who want minimal abstraction, Redash's approach is cleaner than Metabase.

                    When Not to Use It

                    If your team does not know SQL, Redash will frustrate non-technical users — choose Metabase instead, which has a no-SQL question builder. Redash is also not ideal for streaming or real-time data (sub-minute refresh) — Grafana with a time-series database handles that better. If you need predictive analytics, machine learning integration, or complex calculated metrics across multiple data models, a more advanced tool like Superset or Looker is more appropriate. Redash is also not a data pipeline tool — it reads data, it does not transform or move it.

                    PrismaTechWork Professional Help

                    PrismaTechWork provides end-to-end infrastructure services — from initial deployment and security hardening to ongoing monitoring, automated backups, and dedicated support. Whether you need a single-server setup or a multi-site network, our team ensures your infrastructure is built right, secured properly, and maintained reliably.

                      Contact Us

                      Frequently Asked Questions

                      What data sources does Redash support?

                      Redash supports 35+ data sources including PostgreSQL, MySQL, Microsoft SQL Server, SQLite, MariaDB, MongoDB, Google BigQuery, Amazon Redshift, Snowflake, Databricks, Elasticsearch, ClickHouse, Presto, Trino, Apache Hive, CSV/Excel files, Google Sheets, and more. Each data source is configured as a named connection in Settings → Data Sources, and analysts select which source to query when writing each query.

                      Can non-technical users use Redash?

                      Redash is primarily built for SQL users. Non-technical users can view and filter dashboards that analysts have built — especially with query parameters that add dropdown or date picker controls. However, creating new queries requires writing SQL. If your business users need to build their own queries without SQL, Metabase is a better fit. Redash excels when a small analytics team builds queries that a larger audience consumes.

                      How does Redash handle query scheduling?

                      Each query in Redash can have an independent refresh schedule. Click the clock icon in the query editor and choose from presets (every 5 minutes, 30 minutes, 1 hour, 6 hours, 24 hours) or set a custom cron expression. Redash's scheduler worker runs the query in the background and caches the result. Dashboard widgets display the cached result and show the last refresh time, so viewers always see fresh data.

                      Can I share Redash dashboards with external stakeholders?

                      Yes — Redash has a public sharing feature for dashboards. Click the Share icon on any dashboard and enable public access to get a shareable URL. Anyone with the link can view the dashboard without logging in. You can also restrict access with a secret token. For individual queries, you can share the query URL with any logged-in Redash user.

                      How do query parameters work in Redash?

                      In your SQL query, use double curly braces for parameters: WHERE created_at > '{{start_date}}'. Redash automatically renders an input widget above the query. You can set the parameter type (text, number, date, date range, enum dropdown) in the parameter settings. On a dashboard, parameters are shared across all widgets that use the same parameter name, so one date picker filters all relevant charts simultaneously.

                      Can Redash send email alerts when a metric changes?

                      Yes — Redash Alerts monitor a query result and trigger notifications when conditions are met. Create an alert from Create → Alert, select a scheduled query, set the condition (greater than, less than, equals), and configure email, Slack, or webhook destinations. For example, alert when daily revenue drops below a threshold, or when error count exceeds 100.

                      How do I upgrade Redash?

                      Back up the metadata PostgreSQL database first. Then update the Redash image tag in docker-compose.yml to the new version, pull the image (docker compose pull), and run docker compose up -d. Redash runs database migrations automatically on startup. Check the logs (docker compose logs redash) to confirm the migration succeeded before notifying your team.

                      Does Redash support Arabic or RTL interfaces?

                      Redash's UI is English-only with no built-in Arabic language pack or RTL layout. The data you query and display can be in Arabic, and chart labels will show Arabic text correctly. However, the application menus, buttons, and navigation are in English. If a fully Arabic UI is required for your team, Metabase has slightly better i18n support, though neither is designed for full RTL.