/nakadi-docker

Dockerfile to containerize Nakadi

Primary LanguageDockerfileApache License 2.0Apache-2.0

Build and push latest

Why and where

  • There is no official docker image for Nakadi

How to run it

Using Nakadi project provided dependencies

Download Nakadi and start its dependencies

./gradlew startStorages

Start Nakadi docker container using host network (dependencies are running in host network)

docker run -e SPRING_PROFILES_ACTIVE=local -e NAKADI_OAUTH2_MODE=OFF --network=host adyach/nakadi-docker:latest

Start Nakadi with file based authz

docker run \
-e SPRING_PROFILES_ACTIVE=local \
-e NAKADI_OAUTH2_MODE=OFF \
-e NAKADI_PLUGINS_AUTHZ_FACTORY=org.crazycoder.nakadiauthzfileplugin.FileAuthorizationServiceFactory \
-p 8080:8080 -t adyach/nakadi-docker:latest

Note: authz config is used. it is not possible to configure UID of an oauth2 token, when running Nakadi in NAKADI_OAUTH2_MODE=OFF, that's why the UID is allways adminClientId. It should be possible to replace authz.json in container using -v option docker volumes

Using docker compose

Note: the setup was tested against integration smoke test

docker-compose up

How to release new version

Open PR to change version in .github/workflows/buildx.yml

env:
  NAKADI_VERSION: 3.5

Once branch is built, the new version image will be published under NAKADI_VERSION tag. After that merge to master, the latest tag will be published.