Skip to content

Installation

The ETL Engine is shipped as a tar.gz package that contains:

  • a Docker image (data/etl-engine.docker),
  • install and run scripts (bin/install-etl-engine.sh, bin/run-etl-engine.sh),
  • a configuration template (etc/etl-engine/etl.conf),
  • the empty data directories the engine expects (etc/etl-engine.d/),
  • and a logs/ directory for log output.

A typical artefact name is etl-engine-@ETL_VERSION@.tar.gz — the version number tracks engine releases.

The latest release is a free download from rook-it.com/downloads, no login. Older versions and debug builds are available on the same site behind a login for paid customers (older versions matter in healthcare deployments) and Rook IT consultants (debug builds).

Docker or Podman

The instructions throughout this documentation use docker, but podman works as a drop-in replacement — the install and run scripts auto-detect which one is available.

Prerequisites

  • A working Docker or Podman installation.
  • A user account that can talk to the Docker daemon. The install script verifies this for you and fails with a clear message if not. Either run as root or add your user to the group that owns /var/run/docker.sock.

Install

Unzip the artefact into the directory of your choice, then run the install script:

$ tar xzf etl-engine-@ETL_VERSION@.tar.gz
$ cd etl-engine-@ETL_VERSION@
$ ./bin/install-etl-engine.sh

The script does one thing: it loads the bundled image (docker load -i data/etl-engine.docker) into your local Docker registry under the tag etl-engine. There are no other side effects — no system packages installed, no system services configured.

When the script returns, the engine is ready to be configured. The prepared folder structure also appears around the install location — see Folder Layout.

Run

Once the configuration file and a Rabbit-in-a-Hat file are in place, run the engine:

$ cd etl-engine-@ETL_VERSION@
$ ./bin/run-etl-engine.sh

The run script clears any previous logs, starts the etl-engine container with the standard volume mounts, and lets the engine run to completion in the foreground.

The container is started with elevated privileges so that performance profiling tools (/sys/kernel/debug access, host PID namespace) can attach if needed. If your platform's security policy disallows that, adjust the run script — see First ETL Run for what each flag does.

Upgrade

To upgrade, replace the artefact and re-run the install script:

$ tar xzf etl-engine-@ETL_VERSION@.tar.gz
$ cd etl-engine-@ETL_VERSION@/bin
$ ./install-etl-engine.sh

The new image overwrites the previous etl-engine tag. Your configuration and data directories are not touched.