Skip to content

NiklasJonsson6/kafka-keyvalue-kubernetes

 
 

Repository files navigation

Kafka key-value cache

Example usage

See the - name: kkv sidecar in the example yaml.

Constraints

  • Topic keys must be deserializable as String because these strings are used in REST URIs.

Development

Use Skaffold, for example:

eval $(minikube docker-env)
kubectl apply -k github.com/Yolean/kubernetes-kafka/variants/dev-small?ref=v6.0.0
kubectl apply -f https://github.com/Yolean/kubernetes-kafka/raw/50345f266287861d7964d3339a2c2a28e79db2fe/variants/prometheus-operator-example/k8s-cluster-rbac.yaml
SKAFFOLD_NO_PRUNE=true skaffold dev

Builds

NOPUSH=true ./hooks/build

Combine to a multi-arch image

  1. Build and push on OSX: DEBUG=true ./hooks/build
  2. Build and happy-push on Linux amd64: DEBUG=true NOPUSH=true ./hooks/build
  3. The following, depending on platform:
cat multiarch-native.Dockerfile | docker buildx build --platform=linux/amd64,linux/arm64/v8 \
  --build-arg=SOURCE_COMMIT="$SOURCE_COMMIT" -t yolean/kafka-keyvalue:$SOURCE_COMMIT --push -
# Or
cat multiarch-native.Dockerfile | nerdctl build --platform=linux/amd64,linux/arm64/v8 \
  --build-arg=SOURCE_COMMIT="$SOURCE_COMMIT" -t yolean/kafka-keyvalue:$SOURCE_COMMIT -
nerdctl push --platform=linux/amd64,linux/arm64/v8 yolean/kafka-keyvalue:$SOURCE_COMMIT

Logging

See Quarkus' logging configuration.

Releases

No releases published

Packages

No packages published

Languages

  • Java 93.6%
  • Dockerfile 4.1%
  • Shell 2.3%