Placeholder description.
Grab the automated bash script from GitHub to follow along with the video.
wget https://raw.githubusercontent.com/mhmdali94/Docker/main/analytics/redash/redash-ubuntu.sh
chmod +x redash-ubuntu.sh
sudo bash redash-ubuntu.sh
wget https://raw.githubusercontent.com/mhmdali94/Docker/main/analytics/redash/redash-ubuntu.sh
chmod +x redash-ubuntu.sh
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
Open your browser and navigate to:
http://<your-server-ip>:5000
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.
| Port | Purpose |
|---|---|
| 5000 | Redash Web UI |
| 5432 | PostgreSQL — internal only, not exposed |
| 6379 | Redis — internal only, not exposed |
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.
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.
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.
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.
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 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.
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.
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.
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.
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.
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.
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.
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.
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.