A starter kit to dockerize a Business Intelligence Project

Customize atoti Dockerfile for quick deployment

Huifang Yeo
Atoti
3 min readFeb 25, 2021

--

Docker is one of the leading open-source DevOps containerization tools. It enables us to package our applications and the dependencies into containers, making it easy to deploy and run the application.

Pre-requisite

You should have Docker installed on your machine. Refer to the Docker get-started guide if you haven’t.

UPDATE: This article is based on an older version of atoti. Check out the latest atoti documentation for the most updated information.

Steps to dockerize

The diagram below shows how to get an application dockerized. Refer to this Docker blog for more details.

image from Docker blog

Some high-level definitions:

  • Dockerfile: Set of instructions to build the Docker image. This includes the dependencies installation, folders creations etc.
  • Docker image: Set of processes as outlined in the Dockerfile to create the container.
  • Docker containers: An instance of the Docker image with the application ready for use.

Instead of going through the full details of how to dockerize, we speed up the process of dockerizing an atoti Business Intelligence project with the ready-to-use atoti Docker image.

atoti Docker image

atoti distributes an official image on Docker Hub. The image comes with the atoti library and its JupyterLab extension ready to use.

You may use the Dockerfile as a base image to add new layers necessary for your application.

In this article, we will define a password instead of the token authentication that is defaulted in JupyterLab. We will modify the Dockerfile as highlighted below:

Generate the hashed password in advance

Note: You could also disable authentication altogether by setting the token and password to empty strings. This is however not recommended in its documentation.

You can rebuild the image with the command:

Running the Docker image

Before you run the command to run the Docker image, remember to create a volume to persist the data such as your notebooks and files:

Run the image using the create volume with the following command:

Access the BI dashboards

We can now run our atoti notebooks, build and access the dashboards that are saved previously.

Check out the atoti documentation to find out more about what you can do with it.

--

--