Create a Test Environment for the Product Management Dashboard ™

The Product Management Dashboard app is provided as a Docker Image.

If you want to test the app on your machine, the best way in our opinion to do that is to set up two docker containers with the help of a docker-compose file. You can find information about how to install docker-compose here, e.g. simply by installing Docker Desktop on your system.

System Requirements

The docker environment, on which the following setup will be running, should have at least the following resources:

Minimal

  • 2 CPU Cores

  • 3 GB RAM

Recommended

  • 4 CPU Cores

  • 6 GB RAM

The required disk space varies depending on the size of documents you are planning to upload in the app. You should, however, plan with at least 5 GB for the instances.

Environment Parameters

Once you have Docker up and running, you can start by creating a file named dashboard.env in a dedicated folder.
The content could look like this:

APPLICATION_PORT=80
DB_USERNAME=db_user
DB_PASSWORD=db_password 
MYSQL_HOST=proProdDb
MYSQL_PORT=3306
MYSQL_DB=pmBoard
INIT_USER_EMAIL=This email address is being protected from spambots. You need JavaScript enabled to view it.
INIT_USER_PASSWORD=changeme
LANGUAGE=en

This example only uses some of the available environment variables. If you want a more detailed overview over the available parametes, or how to use your own mysql database, you can have a look at the description of the docker image.

APPLICATION_PORT

The port, under wich the app will be running. If you use “80”, you will be able to call the app under “http://localhost”. Be aware that no SSL functions are provided by the app itself. So using e.g. 443 as port won’t enable the https protocoll. 

DB_USERNAME

The Name of the user that has access to the schema on the related MySQL Server.

DB_PASSWORD

The Password of the user that has access to the database on the related MySSQL Server. You should change this! Don’t use the '/' character in your password.

MYSQL_DB

The database for the app. This must be a schema with the collation 'utf8mb4_0900_ai_ci'.

INIT_USER_EMAIL

The email of the inital user of the app. This can later also be changed in the app.

INIT_USER_PASSWORD

The password of the inital user of the app. This can later also be changed in the app.

LANGUAGE

The language in which the showcase is created and the default language for the initial user. Values can be 'de' and 'en', the default is 'en'.

Compose File

Once you created the file and changed all relevant variables, you can go on and create a file named docker-compose.yaml in the same directory (make sure you keep the indentations):

version: "3.7"

networks:
  proProdNetwork:
    name: proProdNetwork

services:
  app:
    image: proprodukt/pmboard:latest
    container_name: pm-dashboard-app
    restart: always
    ports:
      - "${APPLICATION_PORT}:8080"
    environment:
      - DB_USERNAME=${DB_USERNAME}
      - DB_PASSWORD=${DB_PASSWORD}
      - MYSQL_HOST=${MYSQL_HOST}
      - MYSQL_PORT=${MYSQL_PORT}
      - MYSQL_DB=${MYSQL_DB}
      - INIT_USER_EMAIL=${INIT_USER_EMAIL}
      - INIT_USER_PASSWORD=${INIT_USER_PASSWORD}
      - ATTACHMENT_PATH=/dashboard/data
      - WAIT_HOSTS= ${MYSQL_HOST}:${MYSQL_PORT}
      - LANGUAGE=${LANGUAGE}
    volumes:
      - dashboard_data:/dashboard/data
    depends_on:
      - proProdDb
    networks:
      - proProdNetwork

  proProdDb:
    image: mysql:8.0.32
    container_name: pm-dashboard-db
    restart: always
    environment:
      - MYSQL_RANDOM_ROOT_PASSWORD=true
      - MYSQL_DATABASE=${MYSQL_DB}
      - MYSQL_USER=${DB_USERNAME}
      - MYSQL_PASSWORD=${DB_PASSWORD}
    ports:
      - 3306:3306
    volumes:
      - db_data:/var/lib/mysql
    networks:
      - proProdNetwork
    cap_add:
      - SYS_NICE
volumes:
  db_data:
    name: proProdMySql
  dashboard_data:
    name: proProdDashboard

This will create a docker compose application with two services, one for the app and one for the MySql server. It will also create two volumes in which the data of the app and the database are stored. Feel free to change this file, if you know what you are doing. For example you can use your own (existing) MySQL server, which must be of version 8.0.x (or higher). Or you can map the data folders not to volumes, but to folders on your system. Here you can find a overview of how to work with a docker-compose file.

Start and login

Once you created both files, you can use your console to navigate to the folder in which the two files are located and run the following command:

$ sudo docker-compose -p pm-board --env-file dashboard.env up -d

Once both the database container and the app container are started, you should be able to access the app by entering http://localhost in your browser (assuming that you used the defaults above). The username and password are also the values you defined in the environment parameters, by default This email address is being protected from spambots. You need JavaScript enabled to view it. as username and changeme as password.

Getting a test license

In order to use the Product Management Dashboard, you will have to register your local server to get a test license. For the registration you will need the unique server key, that can be found in the License section of the admin pages:

server_key

You can create an account and register your local instance here.

If your local instance can connect to the internet, the app will automaticall fetch the licence. If it has no access, e.g. because the instance is running behind a firewall, you can download the key in our license portal and enter it in the field 'License Key' in the License section of the app.

Update your installation

To update your local installation, you will have to navigate to the folder where you originally created the two files dashboard.env and docker-compose.yaml mentioned above. If you deleted the files, just recreate them.
Now you can run the following command to get the latest version of the app:

$ sudo docker pull proprodukt/pmboard:latest

Once the new version is downloaded, you can rerun the script from above:

$ sudo docker-compose -p pm-board --env-file dashboard.env up -d

If you changed the name of the container group (the param after -p), make sure you also change this in the script above.

Next steps

Once you are done testing, we highly recommend that you clarify with your company's IT department how the app could be hosted in your environment for productive use.

The data you entered during your test will not be lost. You can create an export of your local system, which can then be installed on the new system.

back to knowledgebase

Medal

make your Product Management
market driven, strategic planable & faster

Contact us Find out more

proProduktmanagement Software, Courses & Tools

Select your language

We use cookies

We use cookies on our website. Some of them are essential for the operation of the site, while others help us to improve this site and the user experience (tracking cookies). You can decide for yourself whether you want to allow cookies or not. Please note that if you reject them, you may not be able to use all the functionalities of the site.