Sign inSign up

cychiang/docker-superset

By cychiang

•Updated over 7 years ago

Image
0

1.0K

cychiang/docker-superset repository overview

⁠Superset

Docker image for Superset⁠.

⁠Examples

Navigate to the examples⁠ directory to view examples of how to configure Superset with MySQL, PostgreSQL, or SQLite.

⁠Versions

This repo is tagged in parallel with superset. Pulling amancevice/superset:0.18.5 will fetch the image of this repository running superset version 0.18.5. It is possible that the latest tag includes new features/support libraries but will usually be in sync with the latest semantic version.

⁠Configuration

Follow the instructions⁠ provided by Apache Superset for writing your own superset_config.py. Place this file in a local directory and mount this directory to /etc/superset inside the container. This location is included in the image's PYTHONPATH. Mounting this file to a different location is possible, but it will need to be in the PYTHONPATH.

View the contents of the examples⁠ directory to see some simple superset_config.py samples.

⁠Volumes

The image defines two data volumes: one for mounting configuration into the container, and one for data (logs, SQLite DBs, &c).

The configuration volume is located alternatively at /etc/superset or /home/superset; either is acceptable. Both of these directories are included in the PYTHONPATH of the image. Mount any configuration (specifically the superset_config.py file) here to have it read by the app on startup.

The data volume is located at /var/lib/superset and it is where you would mount your SQLite file (if you are using that as your backend), or a volume to collect any logs that are routed there. This location is used as the value of the SUPERSET_HOME environmental variable.

⁠Database Initialization

After starting the Superset server, initialize the database with an admin user and Superset tables using the superset-init helper script:

docker run --detach --name superset [options] amancevice/superset
docker exec -it superset superset-init

⁠Upgrading

Upgrading to a newer version of superset can be accomplished by re-pulling amancevice/supersetat a specified superset version or latest (see above for more on this). Remove the old container and re-deploy, making sure to use the correct environmental configuration. Finally, ensure the superset database is migrated up to the head:

# Pull desired version
docker pull amancevice/superset

# Remove the current container
docker rm -f superset-old

# Deploy a new container ...
docker run --detach --name superset-new [options] amancevice/superset

# Upgrade the DB
docker exec superset-new superset db upgrade

# Sync the base permissions
docker exec superset-new superset init

Tag summary

Content type

Image

Digest

Size

468.1 MB

Last updated

over 7 years ago

docker pull cychiang/docker-superset