Install Bouquet within a Docker container

This page shows how to install and run Bouquet within a Docker container. 


  • You have Docker installed on your system

Bouquet is composed of two main components:

  • Bouquet Server: a Java application that exposes a RESTful API 
  • Bouquet: a web application that interact with the Bouquet server API.

Bouquet Server requires the following dependencies to run properly:

  • MongoDB: To store the data model
  • Redis: To cache large volume of data
  • Elasticsearch: To provide indexing and search
  • Tomcat & Apache2: To run Bouquet Server application and expose the API

In this documentation you will deploy a container running the stack describe above and be able to access Bouquet, connect your datasource and explore your data.

This guide is composed of two steps:

  1. Launch Bouquet on a new container
  2. Optional: Add a data volume to store Bouquet information locally

Launch Bouquet on a new container

Important: To reduce the Docker image size, we created a tag per datasource. Use the tag that correspond to your database when you pull the docker image.

  • latest: Comes with PostgreSQL support
  • redshift: For AWS Redshift support
  • greenplum: Contains Pivoltal's Greenplum and Hawk support
  • hadoop: Comes with Apache Drill and SparkSQL support

For instance to pull and run Bouquet with Amazon Redshift support, run the following command:

docker run -p 8080:80 -t squidsolutions/bouquet:redshift


Once the image pull and the container running, open your browser and visit the following IP to access Bouquet 

  • On Linux host:

Add a data volume to store Bouquet information locally (Optional)

By default, Bouquet data are stored on disk inside your container and can be lost if you remove the container. To get your data persistent and stored outside the container, we recommand to use data volumes.

Data volumes offer two advantages:

  • They can be shared and reused among containers
  • They are persistent even if the container itself is deleted

To create a new data volume run the following command:

# Create a directory to store the data
mkdir /opt/bouquet/data 
# Run a new container
docker run -p 8080:80 -v /opt/bouquet/data:/var/lib/mongodb -t squidsolutions/bouquet

Bouquet is now installed! See how to create your first project and connect your data source. 

Have more questions? Submit a request


Please sign in to leave a comment.