This is an automated email from the ASF dual-hosted git repository.

sfirke pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/superset.git


The following commit(s) were added to refs/heads/master by this push:
     new f78c94c988 docs(installation): compare installation methods (#33137)
f78c94c988 is described below

commit f78c94c9886574b0cc3fef1d524976fa263e0d47
Author: Sam Firke <[email protected]>
AuthorDate: Wed Apr 23 11:57:33 2025 -0400

    docs(installation): compare installation methods (#33137)
---
 docs/docs/installation/docker-builds.mdx        |  2 +-
 docs/docs/installation/docker-compose.mdx       |  2 +-
 docs/docs/installation/installation-methods.mdx | 58 +++++++++++++++++++++++++
 docs/docs/installation/kubernetes.mdx           |  2 +-
 docs/docs/installation/pypi.mdx                 |  2 +-
 docs/docs/installation/upgrading-superset.mdx   |  2 +-
 6 files changed, 63 insertions(+), 5 deletions(-)

diff --git a/docs/docs/installation/docker-builds.mdx 
b/docs/docs/installation/docker-builds.mdx
index d6d41a1161..c80ade02c6 100644
--- a/docs/docs/installation/docker-builds.mdx
+++ b/docs/docs/installation/docker-builds.mdx
@@ -1,7 +1,7 @@
 ---
 title: Docker Builds
 hide_title: true
-sidebar_position: 6
+sidebar_position: 7
 version: 1
 ---
 
diff --git a/docs/docs/installation/docker-compose.mdx 
b/docs/docs/installation/docker-compose.mdx
index 42d0de47b9..24dccde7c2 100644
--- a/docs/docs/installation/docker-compose.mdx
+++ b/docs/docs/installation/docker-compose.mdx
@@ -1,7 +1,7 @@
 ---
 title: Docker Compose
 hide_title: true
-sidebar_position: 4
+sidebar_position: 5
 version: 1
 ---
 
diff --git a/docs/docs/installation/installation-methods.mdx 
b/docs/docs/installation/installation-methods.mdx
new file mode 100644
index 0000000000..76a481938d
--- /dev/null
+++ b/docs/docs/installation/installation-methods.mdx
@@ -0,0 +1,58 @@
+---
+title: Installation Methods
+hide_title: true
+sidebar_position: 2
+version: 1
+---
+
+import useBaseUrl from "@docusaurus/useBaseUrl";
+
+# Installation Methods
+
+How should you install Superset? Here's a comparison of the different options. 
It will help if you've first read the 
[Architecture](/docs/installation/architecture.mdx) page to understand 
Superset's different components.
+
+The fundamental trade-off is between you needing to do more of the detail work 
yourself vs. using a more complex deployment route that handles those details.
+
+## [Docker Compose](/docs/installation/docker-compose.mdx)
+
+**Summary:** This takes advantage of containerization while remaining simpler 
than Kubernetes. This is the best way to try out Superset; it's also useful for 
developing & contributing back to Superset.
+
+If you're not just demoing the software, you'll need a moderate understanding 
of Docker to customize your deployment and avoid a few risks. Even when 
fully-optimized this is not as robust a method as Kubernetes when it comes to 
large-scale production deployments.
+
+You manage a superset-config.py file and a docker-compose.yml file. Docker 
Compose brings up all the needed services - the Superset application, a 
Postgres metadata DB, Redis cache, Celery worker and beat. They are 
automatically connected to each other.
+
+**Responsibilities**
+
+You will need to back up your metadata DB. That could mean backing up the 
service running as a Docker container and its volume; ideally you are running 
Postgres as a service outside of that container and backing up that service.
+
+You will also need to extend the Superset docker image. The default `lean` 
images do not contain drivers needed to access your metadata database (Postgres 
or MySQL), nor to access your data warehouse, nor the headless browser needed 
for Alerts & Reports. You could run a `-dev` image while demoing Superset, 
which has some of this, but you'll still need to install the driver for your 
data warehouse. The `-dev` images run as root, which is not recommended for 
production.
+
+Ideally you will build your own image of Superset that extends `lean`, adding 
what your deployment needs.
+
+See [Docker Build Presets](/docs/installation/docker-builds/#build-presets) 
for more information about the different image versions you can extend.
+
+## [Kubernetes (K8s)](/docs/installation/kubernetes.mdx)
+
+**Summary:** This is the best-practice way to deploy a production instance of 
Superset, but has the steepest skill requirement - someone who knows Kubernetes.
+
+You will deploy Superset into a K8s cluster. The most common method is using 
the community-maintained Helm chart, though work is now underway to implement 
[SIP-149 - a Kubernetes Operator for 
Superset](https://github.com/apache/superset/issues/31408).
+
+A K8s deployment can scale up and down based on usage and deploy rolling 
updates with zero downtime - features that big deployments appreciate.
+
+**Responsibilities**
+
+You will need to build your own Docker image, and back up your metadata DB, 
both as described in Docker Compose above. You'll also need to customize your 
Helm chart values and deploy and maintain your Kubernetes cluster.
+
+## [PyPI (Python)](/docs/installation/pypi.mdx)
+
+**Summary:** This is the only method that requires no knowledge of containers. 
It requires the most hands-on work to deploy, connect, and maintain each 
component.
+
+You install Superset as a Python package and run it that way, providing your 
own metadata database. Superset has documentation on how to install this way, 
but it is updated infrequently.
+
+If you want caching, you'll set up Redis or RabbitMQ. If you want Alerts & 
Reports, you'll set up Celery.
+
+**Responsibilities**
+
+You will need to get the component services running and communicating with 
each other. You'll need to arrange backups of your metadata database.
+
+When upgrading, you'll need to manage the system environment and packages and 
ensure all components have functional dependencies.
diff --git a/docs/docs/installation/kubernetes.mdx 
b/docs/docs/installation/kubernetes.mdx
index f4b29938d7..9f515a6301 100644
--- a/docs/docs/installation/kubernetes.mdx
+++ b/docs/docs/installation/kubernetes.mdx
@@ -1,7 +1,7 @@
 ---
 title:  Kubernetes
 hide_title: true
-sidebar_position: 2
+sidebar_position: 3
 version: 1
 ---
 
diff --git a/docs/docs/installation/pypi.mdx b/docs/docs/installation/pypi.mdx
index da2aabcf0b..c03261461d 100644
--- a/docs/docs/installation/pypi.mdx
+++ b/docs/docs/installation/pypi.mdx
@@ -1,7 +1,7 @@
 ---
 title: PyPI
 hide_title: true
-sidebar_position: 3
+sidebar_position: 4
 version: 1
 ---
 
diff --git a/docs/docs/installation/upgrading-superset.mdx 
b/docs/docs/installation/upgrading-superset.mdx
index 38e03822dd..46f00b0616 100644
--- a/docs/docs/installation/upgrading-superset.mdx
+++ b/docs/docs/installation/upgrading-superset.mdx
@@ -1,7 +1,7 @@
 ---
 title: Upgrading Superset
 hide_title: true
-sidebar_position: 5
+sidebar_position: 6
 version: 1
 ---
 

Reply via email to