You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@superset.apache.org by "echidnal (via GitHub)" <gi...@apache.org> on 2026/04/30 17:35:17 UTC
[D] Superset 6.1.0.rc2 not using postgres as meta database [superset]
GitHub user echidnal created a discussion: Superset 6.1.0.rc2 not using postgres as meta database
Hi All,
I'm assuming I have a config wrong but can't find it. I'm trying to spin up a more production worthy docker setup. I've built my own image and made sure the postgres db driver is installed. And confirmed this by binding a database and data set to the same postgres db in the docker it should be using for the meta database.
The docker-compose.yml and the custom superset_config.py are being pulled in by Git to the docker server.
Based on what I am seeing -- empty postgres db AND the logs -- it seems to me that Superset is using SQLite DB and not connecting to the postgres db for the meta database. Though I can't find a 100% way to confirm this.
I'm editing and modifying a docker-compose.yml I found on the internet.
My docker-compose.yml:
`version: "3.8"
x-superset-volumes:
&superset-volumes # /app/pythonpath_docker will be appended to the PYTHONPATH in the final container
#- ./docker:/app/docker
- superset_home:/app/superset_home
- ./superset_config.py:/app/pythonpath/superset_config.py
services:
# Redis - Superset's cache and async query backend
superset-redis:
image: redis:7.2-alpine
container_name: superset-redis
restart: unless-stopped
volumes:
- superset_redis_data:/data
networks:
- superset-net
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
# PostgreSQL - Superset's metadata database
superset-db:
image: postgres:16-alpine
container_name: superset-db
restart: unless-stopped
environment:
POSTGRES_DB: superset
POSTGRES_USER: CUSTOMUSER
POSTGRES_PASSWORD: CUSTOMPASSWORD
volumes:
- superset_db_data:/var/lib/postgresql/data
networks:
- superset-net
healthcheck:
test: ["CMD-SHELL", "pg_isready -U superset -d superset"]
interval: 10s
timeout: 5s
retries: 5
ports:
- "5432:5432"
# Superset - main application
superset-app:
image: wpzsuperset:6.1.0rc2
container_name: superset-app
restart: unless-stopped
depends_on:
superset-db:
condition: service_healthy
superset-redis:
condition: service_healthy
ports:
- "8088:8088"
environment:
# Must be a long random string
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
# Database connection for Superset metadata
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
# Redis for caching
REDIS_URL: redis://superset-redis:6379/0
SUPERSET_LOAD_EXAMPLES: "no"
volumes: *superset-volumes
networks:
- superset-net
command: >
sh -c "
superset db upgrade &&
superset fab create-admin --username NOTSHARED --firstname Admin --lastname User --email admin@superset.com --password NOTSHARED &&
superset init &&
gunicorn --bind 0.0.0.0:8088 --workers 4 --timeout 120 'superset.app:create_app()'
"
healthcheck:
test: ["CMD-SHELL", "/app/docker/docker-healthcheck.sh"]
interval: 60s
timeout: 10s
retries: 5
start_period: 360s
# Celery worker for async queries
superset-worker:
image: wpzsuperset:6.1.0rc2
container_name: superset-worker
restart: unless-stopped
depends_on:
- superset-db
- superset-redis
environment:
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
REDIS_URL: redis://superset-redis:6379/0
CELERYD_CONCURRENCY: 2
volumes: *superset-volumes
networks:
- superset-net
command: celery --app=superset.tasks.celery_app:app worker --loglevel=info
healthcheck:
test:
[
"CMD-SHELL", "celery -A superset.tasks.celery_app:app inspect ping -d celery@$$HOSTNAME",
]
# Backup for PostgreSQL MetaDB
pgbackups:
image: prodrigestivill/postgres-backup-local
restart: always
# user: postgres:postgres # Optional: see below
volumes:
- /mnt/wpz-dockervolumes/superset/superset_pgbackups:/backups
links:
- superset-db
depends_on:
- superset-db
environment:
- POSTGRES_HOST=superset-db
- POSTGRES_DB=superset
- POSTGRES_USER=CUSTOMUSER
- POSTGRES_PASSWORD=CUSTOMPASSWORD
- POSTGRES_EXTRA_OPTS=-Z1 --schema=public --blobs
- SCHEDULE=@daily
- BACKUP_ON_START=TRUE
- BACKUP_KEEP_DAYS=7
- BACKUP_KEEP_WEEKS=4
- BACKUP_KEEP_MONTHS=2
- HEALTHCHECK_PORT=8080
networks:
- superset-net
volumes:
superset_redis_data:
superset_db_data:
superset_home:
networks:
superset-net:
driver: bridge`
And here is where I may be making a mistake. I thought the superset_config.py is more of an override than needing ALL the settings in it. I have only put in items I know I need to set and removed the rest. I'm wondering if I need more in this file and that may be my issue:
`import logging
import os
import sys
FEATURE_FLAGS = {"ALERT_REPORTS": True, "DATASET_FOLDERS": True, "DASHBOARD_RBAC": True}
RATELIMIT_STORAGE_URI = "redis://superset-redis:6379/0"
MAPBOX_API_KEY = 'CUSTOMKEY'
from flask_appbuilder.security.manager import AUTH_DB,AUTH_LDAP
LDAP Settings not shared but working
`
And lastly the logs of the container:
`04/29/2026, 05:36:00 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,265:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,266:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,298:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,314:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:06 PM
STDERR
2026-04-30 00:36:06,102:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:06 PM
STDERR
WARNI [alembic.env] SQLite Database support for metadata databases will be removed in a future version of Superset.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Starting the migration scripts.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Will assume transactional DDL.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Migration scripts completed. Duration: 00:00:00
04/29/2026, 05:36:19 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,568:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,584:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:24 PM
STDERR
2026-04-30 00:36:24,181:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:24 PM
STDOUT
Recognized Database Authentications.
04/29/2026, 05:36:24 PM
STDOUT
Error! User already exists admin
04/29/2026, 05:36:37 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,893:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,904:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:41 PM
STDERR
2026-04-30 00:36:41,912:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,111:INFO:superset.security.manager:Syncing role definition
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,142:INFO:superset.security.manager:Syncing Admin perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,148:INFO:superset.security.manager:Syncing Alpha perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,155:INFO:superset.security.manager:Syncing Gamma perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,162:INFO:superset.security.manager:Syncing sql_lab perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,167:INFO:superset.security.manager:Fetching a set of all perms to lookup which ones are missing
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,180:INFO:superset.security.manager:Creating missing datasource permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,186:INFO:superset.security.manager:Creating missing database permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,197:INFO:superset.security.manager:Cleaning faulty perms
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Starting gunicorn 23.0.0
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Listening at: http://0.0.0.0:8088 (133)
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Using worker: sync
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [135] [INFO] Booting worker with pid: 135
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [141] [INFO] Booting worker with pid: 141
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [144] [INFO] Booting worker with pid: 144
04/29/2026, 05:36:46 PM
STDERR
[2026-04-30 00:36:46 +0000] [145] [INFO] Booting worker with pid: 145
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:29 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,967:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,973:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,665:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,673:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,002:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,004:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,621:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,695:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,254:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,330:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,582:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,645:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,722:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,784:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:49 PM
STDERR
2026-04-30 00:37:49,461:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,243:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,294:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,645:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,861:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'
04/30/2026, 09:31:02 AM
STDERR
2026-04-30 16:31:02,805:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'`
Any insight into what is going on would be much appreciated?
GitHub link: https://github.com/apache/superset/discussions/39787
----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [D] Superset 6.1.0.rc2 not using postgres as meta database [superset]
Posted by "echidnal (via GitHub)" <gi...@apache.org>.
GitHub user echidnal edited a discussion: Superset 6.1.0.rc2 not using postgres as meta database
Hi All,
I'm assuming I have a config wrong but can't find it. I'm trying to spin up a more production worthy docker setup. I've built my own image and made sure the postgres db driver is installed. And confirmed this by binding a database and data set to the same postgres db in the docker it should be using for the meta database.
The docker-compose.yml and the custom superset_config.py are being pulled in by Git to the docker server.
Based on what I am seeing -- empty postgres db AND the logs -- it seems to me that Superset is using SQLite DB and not connecting to the postgres db for the meta database. Though I can't find a 100% way to confirm this.
I'm editing and modifying a docker-compose.yml I found on the internet.
My docker-compose.yml:
```version: "3.8"
x-superset-volumes:
&superset-volumes # /app/pythonpath_docker will be appended to the PYTHONPATH in the final container
#- ./docker:/app/docker
- superset_home:/app/superset_home
- ./superset_config.py:/app/pythonpath/superset_config.py
services:
`# Redis - Superset's cache and async query backend
superset-redis:
image: redis:7.2-alpine
container_name: superset-redis
restart: unless-stopped
volumes:
- superset_redis_data:/data
networks:
- superset-net
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
`# PostgreSQL - Superset's metadata database
superset-db:
image: postgres:16-alpine
container_name: superset-db
restart: unless-stopped
environment:
POSTGRES_DB: superset
POSTGRES_USER: CUSTOMUSER
POSTGRES_PASSWORD: CUSTOMPASSWORD
volumes:
- superset_db_data:/var/lib/postgresql/data
networks:
- superset-net
healthcheck:
test: ["CMD-SHELL", "pg_isready -U superset -d superset"]
interval: 10s
timeout: 5s
retries: 5
ports:
- "5432:5432"
`# Superset - main application
superset-app:
image: wpzsuperset:6.1.0rc2
container_name: superset-app
restart: unless-stopped
depends_on:
superset-db:
condition: service_healthy
superset-redis:
condition: service_healthy
ports:
- "8088:8088"
environment:
`# Must be a long random string
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
`# Database connection for Superset metadata
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
`# Redis for caching
REDIS_URL: redis://superset-redis:6379/0
SUPERSET_LOAD_EXAMPLES: "no"
volumes: *superset-volumes
networks:
- superset-net
command: >
sh -c "
superset db upgrade &&
superset fab create-admin --username NOTSHARED --firstname Admin --lastname User --email admin@superset.com --password NOTSHARED &&
superset init &&
gunicorn --bind 0.0.0.0:8088 --workers 4 --timeout 120 'superset.app:create_app()'
"
healthcheck:
test: ["CMD-SHELL", "/app/docker/docker-healthcheck.sh"]
interval: 60s
timeout: 10s
retries: 5
start_period: 360s
`# Celery worker for async queries
superset-worker:
image: wpzsuperset:6.1.0rc2
container_name: superset-worker
restart: unless-stopped
depends_on:
- superset-db
- superset-redis
environment:
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
REDIS_URL: redis://superset-redis:6379/0
CELERYD_CONCURRENCY: 2
volumes: *superset-volumes
networks:
- superset-net
command: celery --app=superset.tasks.celery_app:app worker --loglevel=info
healthcheck:
test:
[
"CMD-SHELL", "celery -A superset.tasks.celery_app:app inspect ping -d celery@$$HOSTNAME",
]
`# Backup for PostgreSQL MetaDB
pgbackups:
image: prodrigestivill/postgres-backup-local
restart: always
`# user: postgres:postgres # Optional: see below
volumes:
- /mnt/wpz-dockervolumes/superset/superset_pgbackups:/backups
links:
- superset-db
depends_on:
- superset-db
environment:
- POSTGRES_HOST=superset-db
- POSTGRES_DB=superset
- POSTGRES_USER=CUSTOMUSER
- POSTGRES_PASSWORD=CUSTOMPASSWORD
- POSTGRES_EXTRA_OPTS=-Z1 --schema=public --blobs
- SCHEDULE=@daily
- BACKUP_ON_START=TRUE
- BACKUP_KEEP_DAYS=7
- BACKUP_KEEP_WEEKS=4
- BACKUP_KEEP_MONTHS=2
- HEALTHCHECK_PORT=8080
networks:
- superset-net
volumes:
superset_redis_data:
superset_db_data:
superset_home:
networks:
superset-net:
driver: bridge```
And here is where I may be making a mistake. I thought the superset_config.py is more of an override than needing ALL the settings in it. I have only put in items I know I need to set and removed the rest. I'm wondering if I need more in this file and that may be my issue:
```import logging
import os
import sys
FEATURE_FLAGS = {"ALERT_REPORTS": True, "DATASET_FOLDERS": True, "DASHBOARD_RBAC": True}
RATELIMIT_STORAGE_URI = "redis://superset-redis:6379/0"
MAPBOX_API_KEY = 'CUSTOMKEY'
from flask_appbuilder.security.manager import AUTH_DB,AUTH_LDAP
LDAP Settings not shared but working
```
And lastly the logs of the container:
```04/29/2026, 05:36:00 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,265:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,266:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,298:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,314:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:06 PM
STDERR
2026-04-30 00:36:06,102:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:06 PM
STDERR
WARNI [alembic.env] SQLite Database support for metadata databases will be removed in a future version of Superset.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Starting the migration scripts.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Will assume transactional DDL.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Migration scripts completed. Duration: 00:00:00
04/29/2026, 05:36:19 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,568:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,584:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:24 PM
STDERR
2026-04-30 00:36:24,181:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:24 PM
STDOUT
Recognized Database Authentications.
04/29/2026, 05:36:24 PM
STDOUT
Error! User already exists admin
04/29/2026, 05:36:37 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,893:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,904:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:41 PM
STDERR
2026-04-30 00:36:41,912:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,111:INFO:superset.security.manager:Syncing role definition
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,142:INFO:superset.security.manager:Syncing Admin perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,148:INFO:superset.security.manager:Syncing Alpha perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,155:INFO:superset.security.manager:Syncing Gamma perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,162:INFO:superset.security.manager:Syncing sql_lab perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,167:INFO:superset.security.manager:Fetching a set of all perms to lookup which ones are missing
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,180:INFO:superset.security.manager:Creating missing datasource permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,186:INFO:superset.security.manager:Creating missing database permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,197:INFO:superset.security.manager:Cleaning faulty perms
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Starting gunicorn 23.0.0
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Listening at: http://0.0.0.0:8088 (133)
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Using worker: sync
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [135] [INFO] Booting worker with pid: 135
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [141] [INFO] Booting worker with pid: 141
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [144] [INFO] Booting worker with pid: 144
04/29/2026, 05:36:46 PM
STDERR
[2026-04-30 00:36:46 +0000] [145] [INFO] Booting worker with pid: 145
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:29 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,967:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,973:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,665:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,673:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,002:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,004:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,621:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,695:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,254:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,330:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,582:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,645:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,722:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,784:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:49 PM
STDERR
2026-04-30 00:37:49,461:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,243:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,294:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,645:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,861:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'
04/30/2026, 09:31:02 AM
STDERR
2026-04-30 16:31:02,805:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'```
Any insight into what is going on would be much appreciated?
GitHub link: https://github.com/apache/superset/discussions/39787
----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [D] Superset 6.1.0.rc2 not using postgres as meta database [superset]
Posted by "dosubot[bot] (via GitHub)" <gi...@apache.org>.
GitHub user dosubot[bot] added a comment to the discussion: Superset 6.1.0.rc2 not using postgres as meta database
<!-- Answer -->
Glad that resolved it! 🎉 Enjoy your production Superset setup.
<!-- Dosu Comment Footer -->
*To reply, just mention [@dosu](https://go.dosu.dev/dosubot?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=reply-with-mention&utm_term=apache%2Fsuperset).*
---
Docs are dead. Just use [Dosu](https://dosu.dev?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-tagline&utm_term=apache%2Fsuperset).
[](https://app.dosu.dev/response-feedback?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-feedback&utm_term=apache%2Fsuperset#message_id=6ca53f3b-4b17-448a-9d89-97d3a4fdcab9) [](https://github.dosu.com/apache/superset?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-ask-repo&utm_term=apache%2Fsuperset) [](https://app.dosu.dev/signup?referrer=openSource&source=github-footer&utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=static-docs-share-team&utm_term=apache%2Fsuperset)
GitHub link: https://github.com/apache/superset/discussions/39787#discussioncomment-16773280
----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [D] Superset 6.1.0.rc2 not using postgres as meta database [superset]
Posted by "echidnal (via GitHub)" <gi...@apache.org>.
GitHub user echidnal edited a discussion: Superset 6.1.0.rc2 not using postgres as meta database
Hi All,
I'm assuming I have a config wrong but can't find it. I'm trying to spin up a more production worthy docker setup. I've built my own image and made sure the postgres db driver is installed. And confirmed this by binding a database and data set to the same postgres db in the docker it should be using for the meta database.
The docker-compose.yml and the custom superset_config.py are being pulled in by Git to the docker server.
Based on what I am seeing -- empty postgres db AND the logs -- it seems to me that Superset is using SQLite DB and not connecting to the postgres db for the meta database. Though I can't find a 100% way to confirm this.
I'm editing and modifying a docker-compose.yml I found on the internet.
My docker-compose.yml:
```version: "3.8"
x-superset-volumes:
&superset-volumes # /app/pythonpath_docker will be appended to the PYTHONPATH in the final container
#- ./docker:/app/docker
- superset_home:/app/superset_home
- ./superset_config.py:/app/pythonpath/superset_config.py
services:
`# Redis - Superset's cache and async query backend
superset-redis:
image: redis:7.2-alpine
container_name: superset-redis
restart: unless-stopped
volumes:
- superset_redis_data:/data
networks:
- superset-net
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
`# PostgreSQL - Superset's metadata database
superset-db:
image: postgres:16-alpine
container_name: superset-db
restart: unless-stopped
environment:
POSTGRES_DB: superset
POSTGRES_USER: CUSTOMUSER
POSTGRES_PASSWORD: CUSTOMPASSWORD
volumes:
- superset_db_data:/var/lib/postgresql/data
networks:
- superset-net
healthcheck:
test: ["CMD-SHELL", "pg_isready -U superset -d superset"]
interval: 10s
timeout: 5s
retries: 5
ports:
- "5432:5432"
`# Superset - main application
superset-app:
image: wpzsuperset:6.1.0rc2
container_name: superset-app
restart: unless-stopped
depends_on:
superset-db:
condition: service_healthy
superset-redis:
condition: service_healthy
ports:
- "8088:8088"
environment:
`# Must be a long random string
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
`# Database connection for Superset metadata
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
`# Redis for caching
REDIS_URL: redis://superset-redis:6379/0
SUPERSET_LOAD_EXAMPLES: "no"
volumes: *superset-volumes
networks:
- superset-net
command: >
sh -c "
superset db upgrade &&
superset fab create-admin --username NOTSHARED --firstname Admin --lastname User --email admin@superset.com --password NOTSHARED &&
superset init &&
gunicorn --bind 0.0.0.0:8088 --workers 4 --timeout 120 'superset.app:create_app()'
"
healthcheck:
test: ["CMD-SHELL", "/app/docker/docker-healthcheck.sh"]
interval: 60s
timeout: 10s
retries: 5
start_period: 360s
`# Celery worker for async queries
superset-worker:
image: wpzsuperset:6.1.0rc2
container_name: superset-worker
restart: unless-stopped
depends_on:
- superset-db
- superset-redis
environment:
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
REDIS_URL: redis://superset-redis:6379/0
CELERYD_CONCURRENCY: 2
volumes: *superset-volumes
networks:
- superset-net
command: celery --app=superset.tasks.celery_app:app worker --loglevel=info
healthcheck:
test:
[
"CMD-SHELL", "celery -A superset.tasks.celery_app:app inspect ping -d celery@$$HOSTNAME",
]
`# Backup for PostgreSQL MetaDB
pgbackups:
image: prodrigestivill/postgres-backup-local
restart: always
`# user: postgres:postgres # Optional: see below
volumes:
- /mnt/wpz-dockervolumes/superset/superset_pgbackups:/backups
links:
- superset-db
depends_on:
- superset-db
environment:
- POSTGRES_HOST=superset-db
- POSTGRES_DB=superset
- POSTGRES_USER=CUSTOMUSER
- POSTGRES_PASSWORD=CUSTOMPASSWORD
- POSTGRES_EXTRA_OPTS=-Z1 --schema=public --blobs
- SCHEDULE=@daily
- BACKUP_ON_START=TRUE
- BACKUP_KEEP_DAYS=7
- BACKUP_KEEP_WEEKS=4
- BACKUP_KEEP_MONTHS=2
- HEALTHCHECK_PORT=8080
networks:
- superset-net
volumes:
superset_redis_data:
superset_db_data:
superset_home:
networks:
superset-net:
driver: bridge
```
And here is where I may be making a mistake. I thought the superset_config.py is more of an override than needing ALL the settings in it. I have only put in items I know I need to set and removed the rest. I'm wondering if I need more in this file and that may be my issue:
```import logging
import os
import sys
FEATURE_FLAGS = {"ALERT_REPORTS": True, "DATASET_FOLDERS": True, "DASHBOARD_RBAC": True}
RATELIMIT_STORAGE_URI = "redis://superset-redis:6379/0"
MAPBOX_API_KEY = 'CUSTOMKEY'
from flask_appbuilder.security.manager import AUTH_DB,AUTH_LDAP
LDAP Settings not shared but working
```
And lastly the logs of the container:
```04/29/2026, 05:36:00 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,265:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,266:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,298:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,314:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:06 PM
STDERR
2026-04-30 00:36:06,102:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:06 PM
STDERR
WARNI [alembic.env] SQLite Database support for metadata databases will be removed in a future version of Superset.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Starting the migration scripts.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Will assume transactional DDL.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Migration scripts completed. Duration: 00:00:00
04/29/2026, 05:36:19 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,568:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,584:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:24 PM
STDERR
2026-04-30 00:36:24,181:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:24 PM
STDOUT
Recognized Database Authentications.
04/29/2026, 05:36:24 PM
STDOUT
Error! User already exists admin
04/29/2026, 05:36:37 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,893:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,904:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:41 PM
STDERR
2026-04-30 00:36:41,912:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,111:INFO:superset.security.manager:Syncing role definition
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,142:INFO:superset.security.manager:Syncing Admin perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,148:INFO:superset.security.manager:Syncing Alpha perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,155:INFO:superset.security.manager:Syncing Gamma perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,162:INFO:superset.security.manager:Syncing sql_lab perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,167:INFO:superset.security.manager:Fetching a set of all perms to lookup which ones are missing
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,180:INFO:superset.security.manager:Creating missing datasource permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,186:INFO:superset.security.manager:Creating missing database permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,197:INFO:superset.security.manager:Cleaning faulty perms
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Starting gunicorn 23.0.0
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Listening at: http://0.0.0.0:8088 (133)
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Using worker: sync
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [135] [INFO] Booting worker with pid: 135
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [141] [INFO] Booting worker with pid: 141
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [144] [INFO] Booting worker with pid: 144
04/29/2026, 05:36:46 PM
STDERR
[2026-04-30 00:36:46 +0000] [145] [INFO] Booting worker with pid: 145
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:29 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,967:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,973:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,665:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,673:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,002:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,004:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,621:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,695:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,254:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,330:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,582:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,645:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,722:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,784:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:49 PM
STDERR
2026-04-30 00:37:49,461:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,243:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,294:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,645:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,861:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'
04/30/2026, 09:31:02 AM
STDERR
2026-04-30 16:31:02,805:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'```
Any insight into what is going on would be much appreciated?
GitHub link: https://github.com/apache/superset/discussions/39787
----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [D] Superset 6.1.0.rc2 not using postgres as meta database [superset]
Posted by "dosubot[bot] (via GitHub)" <gi...@apache.org>.
GitHub user dosubot[bot] added a comment to the discussion: Superset 6.1.0.rc2 not using postgres as meta database
<!-- Greeting -->
Hi @echidnal! I'm [Dosu](https://go.dosu.dev/dosubot) and I’m helping the superset team.
<!-- Answer -->
The issue is that **Superset does not read `SQLALCHEMY_DATABASE_URI` from environment variables automatically**. Setting it as an environment variable in your `docker-compose.yml` has no effect — the logs confirm this with `Context impl SQLiteImpl`, meaning it's falling back to the default SQLite database [[1]](https://github.com/apache/superset/blob/829e4d92d91ceae4b43b1ed3b063ffe45377799c/superset/config.py#L198-L200).
You need to set `SQLALCHEMY_DATABASE_URI` **inside your `superset_config.py`** file. Add this to your config:
```python
SQLALCHEMY_DATABASE_URI = 'postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset'
```
Or, if you prefer to keep credentials in environment variables and reference them from the config:
```python
import os
SQLALCHEMY_DATABASE_URI = os.getenv(
'SQLALCHEMY_DATABASE_URI',
'postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset'
)
```
This is the same pattern used in Superset's own Docker reference config, which explicitly reads environment variables like `DATABASE_HOST`, `DATABASE_PORT`, etc. and constructs the URI in Python [[2]](https://github.com/apache/superset/blob/829e4d92d91ceae4b43b1ed3b063ffe45377799c/docker/pythonpath_dev/superset_config.py#L32-L50).
Your intuition about `superset_config.py` being an override file is correct — you only need to include settings you want to change. But `SQLALCHEMY_DATABASE_URI` **must** be set there (not just as a Docker env var) for Superset to pick it up. After making this change and restarting, you should see `Context impl PostgresqlImpl` in the logs instead of `SQLiteImpl`.
<!-- Dosu Comment Footer -->
*To reply, just mention [@dosu](https://go.dosu.dev/dosubot?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=reply-with-mention&utm_term=apache%2Fsuperset).*
---
Share context across your team and agents. Try [Dosu](https://dosu.dev?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=knowledge-infrastructure-tagline&utm_term=apache%2Fsuperset).
[](https://app.dosu.dev/response-feedback?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=knowledge-infrastructure-feedback&utm_term=apache%2Fsuperset#message_id=d7b71b46-f756-4406-bf0c-b0a2bac68e74) [](https://github.dosu.com/apache/superset?utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=knowledge-infrastructure-learn-repo&utm_term=apache%2Fsuperset) [](https://app.dosu.dev/signup?referrer=openSource&source=github-footer&utm_source=github&utm_medium=bot-comment&utm_campaign=github-comment-footer-20260415&utm_content=knowledge-infrastructure-add-team&utm_term=apache%2Fsuperset)
GitHub link: https://github.com/apache/superset/discussions/39787#discussioncomment-16772567
----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [D] Superset 6.1.0.rc2 not using postgres as meta database [superset]
Posted by "echidnal (via GitHub)" <gi...@apache.org>.
GitHub user echidnal added a comment to the discussion: Superset 6.1.0.rc2 not using postgres as meta database
@dosu - that fixed it thanks!
GitHub link: https://github.com/apache/superset/discussions/39787#discussioncomment-16773276
----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [D] Superset 6.1.0.rc2 not using postgres as meta database [superset]
Posted by "echidnal (via GitHub)" <gi...@apache.org>.
GitHub user echidnal edited a discussion: Superset 6.1.0.rc2 not using postgres as meta database
Hi All,
I'm assuming I have a config wrong but can't find it. I'm trying to spin up a more production worthy docker setup. I've built my own image and made sure the postgres db driver is installed. And confirmed this by binding a database and data set to the same postgres db in the docker it should be using for the meta database.
The docker-compose.yml and the custom superset_config.py are being pulled in by Git to the docker server.
Based on what I am seeing -- empty postgres db AND the logs -- it seems to me that Superset is using SQLite DB and not connecting to the postgres db for the meta database. Though I can't find a 100% way to confirm this.
I'm editing and modifying a docker-compose.yml I found on the internet.
My docker-compose.yml:
```version: "3.8"
x-superset-volumes:
&superset-volumes # /app/pythonpath_docker will be appended to the PYTHONPATH in the final container
#- ./docker:/app/docker
- superset_home:/app/superset_home
- ./superset_config.py:/app/pythonpath/superset_config.py
services:
`# Redis - Superset's cache and async query backend
superset-redis:
image: redis:7.2-alpine
container_name: superset-redis
restart: unless-stopped
volumes:
- superset_redis_data:/data
networks:
- superset-net
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
`# PostgreSQL - Superset's metadata database
superset-db:
image: postgres:16-alpine
container_name: superset-db
restart: unless-stopped
environment:
POSTGRES_DB: superset
POSTGRES_USER: CUSTOMUSER
POSTGRES_PASSWORD: CUSTOMPASSWORD
volumes:
- superset_db_data:/var/lib/postgresql/data
networks:
- superset-net
healthcheck:
test: ["CMD-SHELL", "pg_isready -U superset -d superset"]
interval: 10s
timeout: 5s
retries: 5
ports:
- "5432:5432"
`# Superset - main application
superset-app:
image: wpzsuperset:6.1.0rc2
container_name: superset-app
restart: unless-stopped
depends_on:
superset-db:
condition: service_healthy
superset-redis:
condition: service_healthy
ports:
- "8088:8088"
environment:
`# Must be a long random string
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
`# Database connection for Superset metadata
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
`# Redis for caching
REDIS_URL: redis://superset-redis:6379/0
SUPERSET_LOAD_EXAMPLES: "no"
volumes: *superset-volumes
networks:
- superset-net
command: >
sh -c "
superset db upgrade &&
superset fab create-admin --username NOTSHARED --firstname Admin --lastname User --email admin@superset.com --password NOTSHARED &&
superset init &&
gunicorn --bind 0.0.0.0:8088 --workers 4 --timeout 120 'superset.app:create_app()'
"
healthcheck:
test: ["CMD-SHELL", "/app/docker/docker-healthcheck.sh"]
interval: 60s
timeout: 10s
retries: 5
start_period: 360s
`# Celery worker for async queries
superset-worker:
image: wpzsuperset:6.1.0rc2
container_name: superset-worker
restart: unless-stopped
depends_on:
- superset-db
- superset-redis
environment:
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
REDIS_URL: redis://superset-redis:6379/0
CELERYD_CONCURRENCY: 2
volumes: *superset-volumes
networks:
- superset-net
command: celery --app=superset.tasks.celery_app:app worker --loglevel=info
healthcheck:
test:
[
"CMD-SHELL", "celery -A superset.tasks.celery_app:app inspect ping -d celery@$$HOSTNAME",
]
`# Backup for PostgreSQL MetaDB
pgbackups:
image: prodrigestivill/postgres-backup-local
restart: always
`# user: postgres:postgres # Optional: see below
volumes:
- /mnt/wpz-dockervolumes/superset/superset_pgbackups:/backups
links:
- superset-db
depends_on:
- superset-db
environment:
- POSTGRES_HOST=superset-db
- POSTGRES_DB=superset
- POSTGRES_USER=CUSTOMUSER
- POSTGRES_PASSWORD=CUSTOMPASSWORD
- POSTGRES_EXTRA_OPTS=-Z1 --schema=public --blobs
- SCHEDULE=@daily
- BACKUP_ON_START=TRUE
- BACKUP_KEEP_DAYS=7
- BACKUP_KEEP_WEEKS=4
- BACKUP_KEEP_MONTHS=2
- HEALTHCHECK_PORT=8080
networks:
- superset-net
volumes:
superset_redis_data:
superset_db_data:
superset_home:
networks:
superset-net:
driver: bridge```
And here is where I may be making a mistake. I thought the superset_config.py is more of an override than needing ALL the settings in it. I have only put in items I know I need to set and removed the rest. I'm wondering if I need more in this file and that may be my issue:
`import logging
import os
import sys
FEATURE_FLAGS = {"ALERT_REPORTS": True, "DATASET_FOLDERS": True, "DASHBOARD_RBAC": True}
RATELIMIT_STORAGE_URI = "redis://superset-redis:6379/0"
MAPBOX_API_KEY = 'CUSTOMKEY'
from flask_appbuilder.security.manager import AUTH_DB,AUTH_LDAP
LDAP Settings not shared but working
`
And lastly the logs of the container:
`04/29/2026, 05:36:00 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,265:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,266:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,298:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,314:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:06 PM
STDERR
2026-04-30 00:36:06,102:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:06 PM
STDERR
WARNI [alembic.env] SQLite Database support for metadata databases will be removed in a future version of Superset.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Starting the migration scripts.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Will assume transactional DDL.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Migration scripts completed. Duration: 00:00:00
04/29/2026, 05:36:19 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,568:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,584:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:24 PM
STDERR
2026-04-30 00:36:24,181:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:24 PM
STDOUT
Recognized Database Authentications.
04/29/2026, 05:36:24 PM
STDOUT
Error! User already exists admin
04/29/2026, 05:36:37 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,893:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,904:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:41 PM
STDERR
2026-04-30 00:36:41,912:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,111:INFO:superset.security.manager:Syncing role definition
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,142:INFO:superset.security.manager:Syncing Admin perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,148:INFO:superset.security.manager:Syncing Alpha perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,155:INFO:superset.security.manager:Syncing Gamma perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,162:INFO:superset.security.manager:Syncing sql_lab perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,167:INFO:superset.security.manager:Fetching a set of all perms to lookup which ones are missing
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,180:INFO:superset.security.manager:Creating missing datasource permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,186:INFO:superset.security.manager:Creating missing database permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,197:INFO:superset.security.manager:Cleaning faulty perms
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Starting gunicorn 23.0.0
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Listening at: http://0.0.0.0:8088 (133)
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Using worker: sync
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [135] [INFO] Booting worker with pid: 135
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [141] [INFO] Booting worker with pid: 141
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [144] [INFO] Booting worker with pid: 144
04/29/2026, 05:36:46 PM
STDERR
[2026-04-30 00:36:46 +0000] [145] [INFO] Booting worker with pid: 145
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:29 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,967:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,973:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,665:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,673:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,002:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,004:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,621:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,695:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,254:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,330:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,582:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,645:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,722:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,784:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:49 PM
STDERR
2026-04-30 00:37:49,461:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,243:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,294:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,645:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,861:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'
04/30/2026, 09:31:02 AM
STDERR
2026-04-30 16:31:02,805:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'`
Any insight into what is going on would be much appreciated?
GitHub link: https://github.com/apache/superset/discussions/39787
----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org
Re: [D] Superset 6.1.0.rc2 not using postgres as meta database [superset]
Posted by "echidnal (via GitHub)" <gi...@apache.org>.
GitHub user echidnal edited a discussion: Superset 6.1.0.rc2 not using postgres as meta database
Hi All,
I'm assuming I have a config wrong but can't find it. I'm trying to spin up a more production worthy docker setup. I've built my own image and made sure the postgres db driver is installed. And confirmed this by binding a database and data set to the same postgres db in the docker it should be using for the meta database.
The docker-compose.yml and the custom superset_config.py are being pulled in by Git to the docker server.
Based on what I am seeing -- empty postgres db AND the logs -- it seems to me that Superset is using SQLite DB and not connecting to the postgres db for the meta database. Though I can't find a 100% way to confirm this.
I'm editing and modifying a docker-compose.yml I found on the internet.
My docker-compose.yml:
```version: "3.8"
x-superset-volumes:
&superset-volumes # /app/pythonpath_docker will be appended to the PYTHONPATH in the final container
#- ./docker:/app/docker
- superset_home:/app/superset_home
- ./superset_config.py:/app/pythonpath/superset_config.py
services:
`# Redis - Superset's cache and async query backend
superset-redis:
image: redis:7.2-alpine
container_name: superset-redis
restart: unless-stopped
volumes:
- superset_redis_data:/data
networks:
- superset-net
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
`# PostgreSQL - Superset's metadata database
superset-db:
image: postgres:16-alpine
container_name: superset-db
restart: unless-stopped
environment:
POSTGRES_DB: superset
POSTGRES_USER: CUSTOMUSER
POSTGRES_PASSWORD: CUSTOMPASSWORD
volumes:
- superset_db_data:/var/lib/postgresql/data
networks:
- superset-net
healthcheck:
test: ["CMD-SHELL", "pg_isready -U superset -d superset"]
interval: 10s
timeout: 5s
retries: 5
ports:
- "5432:5432"
`# Superset - main application
superset-app:
image: wpzsuperset:6.1.0rc2
container_name: superset-app
restart: unless-stopped
depends_on:
superset-db:
condition: service_healthy
superset-redis:
condition: service_healthy
ports:
- "8088:8088"
environment:
`# Must be a long random string
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
`# Database connection for Superset metadata
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
`# Redis for caching
REDIS_URL: redis://superset-redis:6379/0
SUPERSET_LOAD_EXAMPLES: "no"
volumes: *superset-volumes
networks:
- superset-net
command: >
sh -c "
superset db upgrade &&
superset fab create-admin --username NOTSHARED --firstname Admin --lastname User --email admin@superset.com --password NOTSHARED &&
superset init &&
gunicorn --bind 0.0.0.0:8088 --workers 4 --timeout 120 'superset.app:create_app()'
"
healthcheck:
test: ["CMD-SHELL", "/app/docker/docker-healthcheck.sh"]
interval: 60s
timeout: 10s
retries: 5
start_period: 360s
`# Celery worker for async queries
superset-worker:
image: wpzsuperset:6.1.0rc2
container_name: superset-worker
restart: unless-stopped
depends_on:
- superset-db
- superset-redis
environment:
SUPERSET_SECRET_KEY: 'CUSTOMESECRETKEY'
SQLALCHEMY_DATABASE_URI: postgresql+psycopg2://CUSTOMUSER:CUSTOMPASSWORD@superset-db:5432/superset
REDIS_URL: redis://superset-redis:6379/0
CELERYD_CONCURRENCY: 2
volumes: *superset-volumes
networks:
- superset-net
command: celery --app=superset.tasks.celery_app:app worker --loglevel=info
healthcheck:
test:
[
"CMD-SHELL", "celery -A superset.tasks.celery_app:app inspect ping -d celery@$$HOSTNAME",
]
`# Backup for PostgreSQL MetaDB
pgbackups:
image: prodrigestivill/postgres-backup-local
restart: always
`# user: postgres:postgres # Optional: see below
volumes:
- /mnt/wpz-dockervolumes/superset/superset_pgbackups:/backups
links:
- superset-db
depends_on:
- superset-db
environment:
- POSTGRES_HOST=superset-db
- POSTGRES_DB=superset
- POSTGRES_USER=CUSTOMUSER
- POSTGRES_PASSWORD=CUSTOMPASSWORD
- POSTGRES_EXTRA_OPTS=-Z1 --schema=public --blobs
- SCHEDULE=@daily
- BACKUP_ON_START=TRUE
- BACKUP_KEEP_DAYS=7
- BACKUP_KEEP_WEEKS=4
- BACKUP_KEEP_MONTHS=2
- HEALTHCHECK_PORT=8080
networks:
- superset-net
volumes:
superset_redis_data:
superset_db_data:
superset_home:
networks:
superset-net:
driver: bridge
```
And here is where I may be making a mistake. I thought the superset_config.py is more of an override than needing ALL the settings in it. I have only put in items I know I need to set and removed the rest. I'm wondering if I need more in this file and that may be my issue:
```import logging
import os
import sys
FEATURE_FLAGS = {"ALERT_REPORTS": True, "DATASET_FOLDERS": True, "DASHBOARD_RBAC": True}
RATELIMIT_STORAGE_URI = "redis://superset-redis:6379/0"
MAPBOX_API_KEY = 'CUSTOMKEY'
from flask_appbuilder.security.manager import AUTH_DB,AUTH_LDAP
LDAP Settings not shared but working
```
And lastly the logs of the container:
```04/29/2026, 05:36:00 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,265:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:03 PM
STDERR
2026-04-30 00:36:03,266:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,298:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:04 PM
STDERR
2026-04-30 00:36:04,314:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:06 PM
STDERR
2026-04-30 00:36:06,102:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:06 PM
STDERR
WARNI [alembic.env] SQLite Database support for metadata databases will be removed in a future version of Superset.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Starting the migration scripts.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.runtime.migration] Will assume transactional DDL.
04/29/2026, 05:36:06 PM
STDERR
INFO [alembic.env] Migration scripts completed. Duration: 00:00:00
04/29/2026, 05:36:19 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:21 PM
STDERR
2026-04-30 00:36:21,721:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,568:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:22 PM
STDERR
2026-04-30 00:36:22,584:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:24 PM
STDERR
2026-04-30 00:36:24,181:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:24 PM
STDOUT
Recognized Database Authentications.
04/29/2026, 05:36:24 PM
STDOUT
Error! User already exists admin
04/29/2026, 05:36:37 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,287:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,893:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:36:40 PM
STDERR
2026-04-30 00:36:40,904:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:36:41 PM
STDERR
2026-04-30 00:36:41,912:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,111:INFO:superset.security.manager:Syncing role definition
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,142:INFO:superset.security.manager:Syncing Admin perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,148:INFO:superset.security.manager:Syncing Alpha perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,155:INFO:superset.security.manager:Syncing Gamma perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,162:INFO:superset.security.manager:Syncing sql_lab perms
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,167:INFO:superset.security.manager:Fetching a set of all perms to lookup which ones are missing
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,180:INFO:superset.security.manager:Creating missing datasource permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,186:INFO:superset.security.manager:Creating missing database permissions.
04/29/2026, 05:36:44 PM
STDERR
2026-04-30 00:36:44,197:INFO:superset.security.manager:Cleaning faulty perms
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Starting gunicorn 23.0.0
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Listening at: http://0.0.0.0:8088 (133)
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [133] [INFO] Using worker: sync
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [135] [INFO] Booting worker with pid: 135
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [141] [INFO] Booting worker with pid: 141
04/29/2026, 05:36:45 PM
STDERR
[2026-04-30 00:36:45 +0000] [144] [INFO] Booting worker with pid: 144
04/29/2026, 05:36:46 PM
STDERR
[2026-04-30 00:36:46 +0000] [145] [INFO] Booting worker with pid: 145
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:28 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:29 PM
STDOUT
Loaded your LOCAL configuration at [/app/pythonpath/superset_config.py]
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,967:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:38 PM
STDERR
2026-04-30 00:37:38,973:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,665:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:39 PM
STDERR
2026-04-30 00:37:39,673:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:40 PM
STDERR
2026-04-30 00:37:40,193:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,002:INFO:alembic.runtime.migration:Context impl SQLiteImpl.
04/29/2026, 05:37:41 PM
STDERR
2026-04-30 00:37:41,004:INFO:alembic.runtime.migration:Will assume non-transactional DDL.
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,621:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:42 PM
STDERR
2026-04-30 00:37:42,695:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,254:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,330:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,582:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:43 PM
STDERR
2026-04-30 00:37:43,645:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,722:INFO:superset.app:Syncing configuration to database...
04/29/2026, 05:37:44 PM
STDERR
2026-04-30 00:37:44,784:INFO:superset.app:Configuration sync to database completed successfully
04/29/2026, 05:37:49 PM
STDERR
2026-04-30 00:37:49,461:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,243:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,294:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,645:INFO:superset.core.mcp.core_mcp_injection:fastmcp is not installed, skipping MCP initialization. Install it with: pip install 'apache-superset[fastmcp]'
04/29/2026, 05:37:50 PM
STDERR
2026-04-30 00:37:50,861:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'
04/30/2026, 09:31:02 AM
STDERR
2026-04-30 16:31:02,805:WARNING:superset.views.base:Could not load default spinner SVG: [Errno 2] No such file or directory: '/app/superset/views/../../superset-frontend/packages/superset-ui-core/src/components/assets/images/loading.svg'
```
Any insight into what is going on would be much appreciated?
GitHub link: https://github.com/apache/superset/discussions/39787
----
This is an automatically sent email for notifications@superset.apache.org.
To unsubscribe, please send an email to: notifications-unsubscribe@superset.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@superset.apache.org
For additional commands, e-mail: notifications-help@superset.apache.org