Server Installation

  1. Host system

    You will need some kind of server to run the platform on.
    Minimum specs:
    • OS: Ubuntu 20.04/22.04, Ubuntu Server 20.04/22.04 or AlmaLinux 9.3

    • CPU: 8 cores (recommended 16+)

    • RAM: 64GB+ (recommended 128GB+)

    • Storage for application-data (fast-dir): 100GB (recommended >200GB)

    • Storage for imaging-data (slow-dir): depends on your needs

  2. Access to a container registry (online) or a prebuild installer and tarball (offline)

    Before proceeding with further installation steps, make sure you have access either to container registry or image tarball and microk8s installer installer visit Build Kaapana.


    Accessing container Registry or Tarball with Pre-built Containers
    If you are interested in exploring our platform, we encourage you to get in touch with us (Contact). Should you choose to do so, we will gladly offer you two options for accessing it. You can either receive credentials for our container registry or receive a tarball that includes the necessary containers. With these options, you can directly deploy the platform without the need to go through the building process.

    To provide the services in Kaapana, the corresponding containers are needed. These can be looked at as normal binaries of Kaapana and therefore only need to be built if you do not have access to already built containers via a container registry or a tarball.

Server Config

Port Configuration

In the default configuration the following ports are opened for incoming traffic on the system






Redirect to HTTPS port 443



Web Interface of the Platform (Interaction, File Upload, APIs)



DICOM C-STORE SCP to send images to the platform


Kaapana uses MicroK8s as Kubernetes distribution which also opens ports on the machine it runs on. For an up to date list visit the corresponding microk8s documentation.


If you need to configure a proxy in your institution to access the internet, you can do this as follows:

  1. Open /etc/environment on your deployment server:

    nano /etc/environment

  2. Insert the proxy variables for the proxy in your institution

  3. Logout logout and login again

  4. Your network connection is working if you can reach the dkfz website or any other website:


Custom DNS Server

You can configure a custom DNS my.custom.dns by executing:

sed -i 's/DNS=""/DNS="my.custom.dns"/' ./kaapana/server-installation/

If not set manually, the DNS will be configured according to system information.

Installation of Server Dependencies

This part describes the preparation of the host system for Kaapana. Besides a few required software packages, mainly Microk8s is installed, to setup Kubernetes.


GPU support (Nvidia GPUs)
GPU support requires the installation of Nvidia drivers.
Please make sure the nvidia-smi command is working as expected!

Before the example platform “Kaapana-platform” can be deployed, all dependencies must be installed on the server. To do this, you can use the server-installation-script.


If you don’t want to clone the Kaapana repository, you can copy the script from Github.
  1. Copy the script to your target-system (server)

    Script location: kaapana/server-installation/

  2. Make it executable:

    chmod +x
  3. Execute the server installation script:

    sudo ./


    On Almalinux it is recommended to set -E flag to preserve user’s environmental variables.
    sudo -E ./
  4. Reboot the system

    sudo reboot
  5. (optional) Enable GPU support for Microk8s

    sudo ./ -gpu


Server Dependency Uninstallation
To uninstall the server-packages, you can use sudo ./ --uninstall