Clone this repo:
  1. fbeafa5 Support custom corpus documentation templates by Marc Kupietz · 6 weeks ago master
  2. ae0b585 Update GH CI workflow with new profile scheme by Marc Kupietz · 3 months ago
  3. 0d77b70 Fix export only working on localhost by Marc Kupietz · 3 months ago
  4. c049662 Update Readme.md with new KorAP-Ingestion by Marc Kupietz · 3 months ago
  5. 65df79a Bump Kalamar to v0.65 by Marc Kupietz · 3 months ago

KorAP-Docker

The KorAP Corpus Analysis Platform consists of several independent components, but they can easily be installed together using Docker. This repository contains a recipe to install all components needed to run KorAP on your own local machine with a single command.

Requirements

Install docker and docker compose (>= v2; as a CLI plugin).

Starting

To get KorAP running, an index is required. For testing, there is a test index available as a docker image. Just run

COMPOSE_PROFILES="open,example" INDEX='example-index' docker compose -p korap up

to start the example image and the service with Linux (See here for more information on Windows).

To run without the export plugin, set KALAMAR_EXPORT=false or omit export from COMPOSE_PROFILES:

COMPOSE_PROFILES="open,example" KALAMAR_EXPORT=false INDEX='example-index' docker compose -p korap up

It's also possible to download the sample index provided by Kustvakt. To download, intialize and run KorAP pointing to that index folder (in this example stored in the index folder in the local directory), run

COMPOSE_PROFILES="open" INDEX=./index docker compose -p korap up

This will make the frontend be available at localhost:64543.

To use your own index, please follow the instructions on Corpus Conversion first.

To run the service with a user management system, first create a directory data in your working directory and then start it with

COMPOSE_PROFILES="auth" INDEX=./index docker compose -p korap up

Login with user1 and password1. To change authentication settings, see the /kusvakt/ldap folder inside the docker container and Kustvakt's LDAP Settings Wiki for documentation.

Describing Your Own Corpus

The documentation pages of the user interface can be adapted without rebuilding the Kalamar image: the custom/ directory of this repository is mounted into the container, and Kalamar serves a documentation page from there whenever it does not ship one itself. To describe the corpus you are serving, copy the example and edit it:

cp custom/doc/corpus.html.ep.example custom/doc/corpus.html.ep
$EDITOR custom/doc/corpus.html.ep
docker compose restart kalamar

The page is then served at /doc/corpus. Kalamar's documentation menu has no corpus entry of its own; to add one, mount your own templates/doc/navigation.json over the one Kalamar ships. custom/ also contains examples for a references page listing how to cite your corpus. See custom/README.md for details, and set KALAMAR_TEMPLATES to keep the templates somewhere else:

KALAMAR_TEMPLATES=/path/to/my-templates COMPOSE_PROFILES="open" INDEX=./index docker compose -p korap up

This requires Kalamar 0.66 or later.

Corpus Conversion

As of June 2026, the corpus conversion, annotation and indexing process has been significantly simplified and is now orchestrated by KorAP-Ingestion. In many cases, a simple make command is sufficient to ingest your TEI XML data and launch your own KorAP instance. For comprehensive instructions and advanced options, please refer to the KorAP-Ingestion documentation.

Windows

Windows with Powershell requires environment variables to pass in a different way. In addition the PWD variable is not set beforehand. To run the KorAP one-liner with Windows, you have to start

$env:INDEX='example-index'; $env:PWD='.'; $env:COMPOSE_PROFILES='open,example'; docker compose -p korap up

Development and License

Authors: Nils Diewald, Harald Lüngen, Marc Kupietz

Copyright (c) 2022-2026, IDS Mannheim, Germany

KorAP-Docker is published under the BSD-2 License.

The example corpus corresponds to the release part of the Dortmunder Chatkorpus 2.2 as prepared by DeReKo. The corpus is released under the CC BY 4.0 License. Legal restrictions may arise from data protection legislation.

Bibliography

Beißwenger, Michael / Storrer, Angelika (2008): Corpora of Computer-Mediated Communication. In: Anke Lüdeling & Merja Kytö (Eds): Corpus Linguistics. An International Handbook. Volume 1. Berlin. New York (Handbooks of Linguistics and Communication Science 29.1), pp. 292--308.