Skip to content

RunningPlatform

ppodsednik edited this page Jan 9, 2026 · 5 revisions

Running the Process Platform

Tato stránka popisuje jak spustit process-platform pomocí Dockeru – tedy jak rozběhnout:

  1. Process Manager
  2. Worker (např. curatorWorker)

Navazuje na stránky:

  • Home – přehled platformy
  • PluginBuild – jak Worker image vzniká

Zde se řeší pouze runtime spuštění a konfigurace pomocí environment proměnných.


Přehled spuštění

Základní pořadí je vždy stejné:

  1. Spustit Process Manager
  2. Spustit jeden nebo více Workerů

Worker se při běhu:

  • periodicky dotazuje Managera
  • přebírá úlohy
  • spouští procesy definované pluginy

1. Process Manager

Docker image

Process Manager je dostupný jako Docker image:

ceskaexpedice/process-manager

Konfigurace pomocí environment proměnných

Manager vyžaduje připojení k databázi a strategii výběru procesů.

Povinné proměnné

JDBC_URL=jdbc:postgresql://localhost:15432/kramerius
JDBC_USERNAME=fedoraAdmin
JDBC_PASSWORD=fedoraAdmin
  • určují připojení k databázi
  • hodnoty je nutné přizpůsobit konkrétnímu prostředí

Strategie plánování

NEXT_SCHEDULED_PROCESS_STRATEGY=TAG_MATCHING_ONLY
# NEXT_SCHEDULED_PROCESS_STRATEGY=BATCH_AFFINITY
  • určuje, jak Manager vybírá další proces ke spuštění
  • konkrétní význam strategií je popsán v samostatné kapitole dokumentace

Příklad spuštění Managera

docker run -d \
  --name process-manager \
  -e JDBC_URL=jdbc:postgresql://host.docker.internal:15432/kramerius \
  -e JDBC_USERNAME=fedoraAdmin \
  -e JDBC_PASSWORD=fedoraAdmin \
  -e NEXT_SCHEDULED_PROCESS_STRATEGY=TAG_MATCHING_ONLY \
  ceskaexpedice/process-manager

2. Worker (např. curatorWorker)

Docker image

Po buildu podle stránky PluginBuild je Worker dostupný jako image:

ceskaexpedice/curator-worker

Každý Worker image:

  • obsahuje pevně danou sadu pluginů
  • je určen pro konkrétní typ práce

Konfigurace Workeru pomocí environment proměnných

MANAGER_BASE_URL=http://localhost:8080
WORKER_BASE_URL=http://localhost:8081
WORKER_ID=curatorWorker
WORKER_LOOP_SLEEP_SECS=10

Význam proměnných

Proměnná Význam
MANAGER_BASE_URL URL Process Managera
WORKER_BASE_URL Veřejná URL Workeru (pro zpětné volání)
WORKER_ID Jednoznačný identifikátor Workeru
WORKER_LOOP_SLEEP_SECS Interval dotazování na Managera

⚠️ Hodnoty MANAGER_BASE_URL a WORKER_BASE_URL musí být vždy přizpůsobeny prostředí (Docker host, Kubernetes, VM apod.).


Příklad spuštění Workeru

docker run -d \
  --name curator-worker \
  -e MANAGER_BASE_URL=http://host.docker.internal:8080 \
  -e WORKER_BASE_URL=http://host.docker.internal:8081 \
  -e WORKER_ID=curatorWorker \
  -e WORKER_LOOP_SLEEP_SECS=10 \
  ceskaexpedice/curator-worker

3. Typický runtime diagram

graph LR
    A[Process Manager] <-->|REST| B[curatorWorker]
    B --> C[Import Plugin]
    B --> D[Index Plugin]
Loading

4. Dashboard a OpenAPI rozhraní

Po úspěšném spuštění jsou Process Manager i Worker dostupné přes webové rozhraní.

Process Manager

Manager poskytuje:

  • Dashboard – základní přehled běhu platformy
  • OpenAPI – dokumentované REST API

Typicky dostupné na:

http://localhost:8091/process-manager
http://localhost:8091/process-manager/openapi

Dashboard slouží zejména pro:

  • kontrolu běžících a naplánovaných procesů
  • diagnostiku stavu platformy

OpenAPI rozhraní umožňuje:

  • programovou správu procesů
  • integraci s externími nástroji

Worker

Každý Worker má obdobné rozhraní:

  • základní stavový přehled
  • OpenAPI dokumentaci

Typicky dostupné na:

http://localhost:8092/worker
http://localhost:8092/worker/openapi

Konkrétní port a context path závisí na konfiguraci Dockeru a prostředí.


Shrnutí

  • Process Manager musí běžet jako první
  • Worker se konfiguruje výhradně pomocí environment proměnných
  • Docker image Workeru už obsahuje všechny pluginy
  • Runtime konfigurace je oddělena od build-time konfigurace

Odkazy: Home, Plugin Build & Worker Build