Skip to content

Container Installation

Installing a container engine

You can use any Container engine you want, for example Podman or Docker as long as it understands the Docker file format. The following explanations will focus on Docker.

# apt update
# apt install apt-transport-https ca-certificates curl gnupg lsb-release
# curl -fsSL | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] $(lsb_release -cs) stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
# apt update
# apt install docker-ce docker-ce-cli docker-compose
# systemctl enable docker --now
# yum install yum-utils
# yum-config-manager --add-repo
# yum install docker-ce docker-ce-cli
# systemctl enable docker --now

You also need Git since we will clone a repository from GitHub. Install it with apt install git or yum install git depending on your distribution.

Getting the Compose file

We manage our files in a Git repository, clone it with git clone to a location you want. Then enter the directory with cd.

Starting the containers

If you just want to check out Peering Manager it is sufficient to run docker-compose up -d. This will spin up the required Redis, PostgreSQL and all the Peering Manager processes. Keep in mind to use a docker-compose.override.yml file to expose a port and also setup a proxy of your choice.

Further configuration

When running in a production environment it is highly recommended to change some settings. The settings files can be found in the env folder. It is especially important to change passwords for Redis and PostgreSQL aswell as the encryption key of Peering Manager.


Variable Usage
REDIS_PASSWORD Password for Redis key-value store


Variable Usage
POSTGRES_USER Username for database
POSTGRES_PASSWORD Password for database
POSTGRES_DB Database name


Variable Usage
SECRET_KEY Used for cryptopgraphic features
BASE_PATH Set to path when Peering Manager is not at root
DB_NAME Database name
DB_USER Username for database
DB_PASSWORD Password for database
REDIS_PASSWORD Password for Redis key-value store