Run the following command to start a Postgresql server in docker container and Rakam API in your local environment.

docker run -d --name rakam-db -e POSTGRES_PASSWORD=dummy -e POSTGRES_USER=rakam postgres:9.6.1 && docker run --link rakam-db --name rakam -p 9999:9999 -e RAKAM_CONFIG_LOCK-KEY=mylockKey buremba/rakam

After docker container is started, visit and follow the instructions. You can also register your local Rakam API to Rakam BI at or directly use Rakam API. You may also consult to API documentation for details of the API.

We also provide docker-compose definition for Postgresql backend. Create a docker-compose.yml with from this definition and run the command docker-compose run rakam-api -f docker-compose.yml.

version: '2'
    image: postgres:9.6.1
      - POSTGRES_USER=rakam
    image: buremba/rakam
      - "9999:9999"
      - rakam-db

You can set config variables for Rakam instance using environment variables. All properties in file can be set via environment variable RAKAM_CONFIG_property_name_dots_replaced_by_underscore. For example, if you want to set store.adapter=postgresql you need to set environment variable RAKAM_CONFIG_STORE_ADAPTER=postgresql.

Dockerfile will generate file from environment variables in docker container that start with RAKAM_CONFIG prefix.

In order to set environment variables for container, you may use -e flag for for docker run but we advice you to set all environment variables in a file and use --env-file flag when starting your container.

Then you can share same file among the Rakam containers. If Dockerfile can't find any environment variable starts with RAKAM_CONFIG, it tries to connect Postgresql instance created with docker-compose.

Did this answer your question?