From d8c26d8ebca398e2200c0657ab7d018627238445 Mon Sep 17 00:00:00 2001 From: Daniel Vaz Gaspar Date: Thu, 21 Apr 2022 10:16:00 +0100 Subject: [PATCH] chore: bump postgres from 10 to 14 (#19790) * chore: bump postgres from 10 to 14 * update helm chart * adding docs * fix docs * Update docs/docs/installation/configuring-superset.mdx Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com> * Update docs/docs/installation/configuring-superset.mdx Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com> * improve docs * improve docs Co-authored-by: Ville Brofeldt <33317356+villebro@users.noreply.github.com> --- .github/workflows/superset-e2e.yml | 2 +- .../superset-python-integrationtest.yml | 2 +- .../workflows/superset-python-presto-hive.yml | 4 +-- docker-compose.yml | 2 +- .../installation/configuring-superset.mdx | 26 +++++++++++++++++++ ...stalling-superset-using-docker-compose.mdx | 2 +- helm/superset/Chart.yaml | 18 ++++++------- 7 files changed, 41 insertions(+), 15 deletions(-) diff --git a/.github/workflows/superset-e2e.yml b/.github/workflows/superset-e2e.yml index be0df99551a40..e99c5ee05ef51 100644 --- a/.github/workflows/superset-e2e.yml +++ b/.github/workflows/superset-e2e.yml @@ -31,7 +31,7 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} services: postgres: - image: postgres:10-alpine + image: postgres:14-alpine env: POSTGRES_USER: superset POSTGRES_PASSWORD: superset diff --git a/.github/workflows/superset-python-integrationtest.yml b/.github/workflows/superset-python-integrationtest.yml index a5a7705bcd88e..926d6185bf4e8 100644 --- a/.github/workflows/superset-python-integrationtest.yml +++ b/.github/workflows/superset-python-integrationtest.yml @@ -88,7 +88,7 @@ jobs: SUPERSET__SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://superset:superset@127.0.0.1:15432/superset services: postgres: - image: postgres:10-alpine + image: postgres:14-alpine env: POSTGRES_USER: superset POSTGRES_PASSWORD: superset diff --git a/.github/workflows/superset-python-presto-hive.yml b/.github/workflows/superset-python-presto-hive.yml index 3a4022d893eef..097b2f45adf9b 100644 --- a/.github/workflows/superset-python-presto-hive.yml +++ b/.github/workflows/superset-python-presto-hive.yml @@ -23,7 +23,7 @@ jobs: SUPERSET__SQLALCHEMY_EXAMPLES_URI: presto://localhost:15433/memory/default services: postgres: - image: postgres:10-alpine + image: postgres:14-alpine env: POSTGRES_USER: superset POSTGRES_PASSWORD: superset @@ -101,7 +101,7 @@ jobs: UPLOAD_FOLDER: /tmp/.superset/uploads/ services: postgres: - image: postgres:10-alpine + image: postgres:14-alpine env: POSTGRES_USER: superset POSTGRES_PASSWORD: superset diff --git a/docker-compose.yml b/docker-compose.yml index b7bf745ad6ff6..907ca51129caa 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -40,7 +40,7 @@ services: db: env_file: docker/.env - image: postgres:10 + image: postgres:14 container_name: superset_db restart: unless-stopped ports: diff --git a/docs/docs/installation/configuring-superset.mdx b/docs/docs/installation/configuring-superset.mdx index f99a05ae858ae..779cb29e7ab0d 100644 --- a/docs/docs/installation/configuring-superset.mdx +++ b/docs/docs/installation/configuring-superset.mdx @@ -70,6 +70,32 @@ you can add the endpoints to `WTF_CSRF_EXEMPT_LIST`: WTF_CSRF_EXEMPT_LIST = [‘’] ``` +### Using a production metastore + +By default Superset is configured to use SQLite, it's a simple and fast way to get you started +(no installation needed). But for production environments you should use a different database engine on +a separate host or container. + +Superset supports the following database engines/versions: + +| Database Engine | Supported Versions | +| --------------------------------------------------------- | --------------------------------- | +| [PostgreSQL](https://www.postgresql.org/) | 10.X, 11.X, 12.X, 13.X, 14.X | +| [MySQL](https://www.mysql.com/) | 5.X | + + +Use the following database drivers and connection strings: + +| Database | PyPI package | Connection String | +| ----------------------------------------- | --------------------------------- | ------------------------------------------------------------------------ | +| [PostgreSQL](https://www.postgresql.org/) | `pip install psycopg2` | `postgresql://:@/` | +| [MySQL](https://www.mysql.com/) | `pip install mysqlclient` | `mysql://:@/` | +| SQLite | No additional library needed | `sqlite://` | + +To configure Superset metastore set `SQLALCHEMY_DATABASE_URI` config key on `superset_config` +to the appropriate connection string. + + ### Running on a WSGI HTTP Server While you can run Superset on NGINX or Apache, we recommend using Gunicorn in async mode. This diff --git a/docs/docs/installation/installing-superset-using-docker-compose.mdx b/docs/docs/installation/installing-superset-using-docker-compose.mdx index 4d7056a165d8b..ced6ba5660a3b 100644 --- a/docs/docs/installation/installing-superset-using-docker-compose.mdx +++ b/docs/docs/installation/installing-superset-using-docker-compose.mdx @@ -109,7 +109,7 @@ username: admin password: admin ``` -### 5. Connecting your local database instance to superset +### 5. Connecting Superset to your local database instance When running Superset using `docker` or `docker-compose` it runs in its own docker container, as if the Superset was running in a separate machine entirely. Therefore attempts to connect to your local database with hostname `localhost` won't work as `localhost` refers to the docker container Superset is running in, and not your actual host machine. Fortunately, docker provides an easy way to access network resources in the host machine from inside a container, and we will leverage this capability to connect to our local database instance. diff --git a/helm/superset/Chart.yaml b/helm/superset/Chart.yaml index ef09dd2d2f070..2ac78630149b5 100644 --- a/helm/superset/Chart.yaml +++ b/helm/superset/Chart.yaml @@ -22,13 +22,13 @@ maintainers: - name: craig-rueda email: craig@craigrueda.com url: https://github.com/craig-rueda -version: 0.5.11 +version: 0.6.0 dependencies: - - name: postgresql - version: 10.2.0 - repository: https://charts.bitnami.com/bitnami - condition: postgresql.enabled - - name: redis - version: 16.3.1 - repository: https://charts.bitnami.com/bitnami - condition: redis.enabled +- name: postgresql + version: 11.1.22 + repository: https://charts.bitnami.com/bitnami + condition: postgresql.enabled +- name: redis + version: 16.3.1 + repository: https://charts.bitnami.com/bitnami + condition: redis.enabled