Public | Automated Build

Last pushed: 3 days ago
Short Description
[0.18.2] Superset for MySQL, PostgreSQL, SQLite, and Amazon Redshift on Python3
Full Description

Superset

Docker image for AirBnB's Superset.

Formerly Caravel

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.17.3 will fetch the image of this repository running superset version 0.17.3. 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 AirBnB for writing your own superset_config.py. Place this file in a local directory and mount this directory to /home/superset/.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.

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
Docker Pull Command
Owner
amancevice
Source Repository

Comments (8)
henrilo
a day ago

What is the default password? I got access to the login screen http://localhost:32768/login/.

ddizhang
13 days ago

I'm trying to add database and set the SQLAlchemy URI. However it's giving the error message 'No module named 'pymssql' and ''No module named 'pyodbc''. What could possibly be causing this problem?

I'm using the latest image.

amancevice
a month ago

@swaldren you're going to have to be more specific. What command did you run to start the container? Did you see the examples on GitHub?

swaldren
2 months ago

Just pulled down image. Tried to run it. I get an error : ERROR:flask_appbuilder.security.sqla.manager:DB Creation and initialization failed: (sqlite3.OperationalError) unable to open database file

amancevice
2 months ago

@dwpdsnclss I'd file an issue with AirBnB -- I'm not affiliated with the project, this is just a Docker image that deploys it.

dwpdsnclss
2 months ago

Importing a table from postgres - I can't amend the List Table Column page, I check desired boxes, go back to details and save, but lose changes.

Am I missing something obvious?

amancevice
6 months ago

@zfbp ldap isn't installed in this image by default. You'll have to install it yourself for now:

FROM amancevice/superset:0.13.2
RUN pip3 install ldap3

zfbp
6 months ago

When set AUTH_TYPE =2 (AUTH_LDAP) :

Traceback (most recent call last):
File "/usr/lib/python3.5/site-packages/flask_appbuilder/security/manager.py", line 597, in auth_user_ldap
import ldap
ImportError: No module named 'ldap'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/lib/python3.5/site-packages/flask/app.py", line 1988, in wsgi_app
response = self.full_dispatch_request()
File "/usr/lib/python3.5/site-packages/flask/app.py", line 1641, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/lib/python3.5/site-packages/flask/app.py", line 1544, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/usr/lib/python3.5/site-packages/flask/_compat.py", line 33, in reraise
raise value
File "/usr/lib/python3.5/site-packages/flask/app.py", line 1639, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/lib/python3.5/site-packages/flask/app.py", line 1625, in dispatch_request
return self.view_functionsrule.endpoint
File "/usr/lib/python3.5/site-packages/flask_appbuilder/security/views.py", line 398, in login
user = self.appbuilder.sm.auth_user_ldap(form.username.data, form.password.data)
File "/usr/lib/python3.5/site-packages/flask_appbuilder/security/manager.py", line 599, in auth_user_ldap
raise Exception("No ldap library for python.")
Exception: No ldap library for python.