A Helm chart to deploy Apache Tika on Kubernetes.

Clone this repo:
  1. 5df056c Add support for service annotations (#20) by aidanthewiz · 6 hours ago main
  2. 8278ff6 Support for adding custom tika configuration (#15) by Ahil Mathew Eapachen · 4 weeks ago
  3. 0f1ad49 TIKA-4227 Register tika-helm Chart in artifacthub.io (#16) by Lewis John McGibbney · 6 weeks ago
  4. a73d5af Release prep for tika-helm v2.9.0.0-full by Lewis John McGibbney · 8 months ago v2.9.0.0-full
  5. e7bde48 Release prep for tika-helm v2.9.0.0 by Lewis John McGibbney · 8 months ago v2.9.0.0

tika-helm

Artifact HUB

lint + install workflow

A Helm chart to deploy Apache Tika on Kubernetes.

This Helm chart is a lightweight way to configure and run the official apache/tika Docker image.

We recommend that the Helm chart version is aligned to the version Tika (and subsequently the version of the Tika Docker image) you want to deploy. This will ensure that you using a chart version that has been tested against the corresponding production version. This will also ensure that the documentation and examples for the chart will work with the version of Tika you are installing.

Warning: This branch is used for development, please use the latest release for released version.

Requirements

  • Kubernetes >= 1.14
  • Helm >= v3.4.2

Installing

Install released version using Helm repository

N.B. You may or may not need/wish to install the chart into a specific namespace, in which case you may need to augment the commands below.

  • Add the Tika Helm charts repo: helm repo add tika https://apache.jfrog.io/artifactory/tika

  • Install it:

    • with Helm 3: helm install tika tika/tika --set image.tag=${release.version} -n tika-test, you will see something like
helm install tika tika/tika --set image.tag=latest-full -n tika-test

...
NAME: tika
LAST DEPLOYED: Mon Jan 24 13:38:01 2022
NAMESPACE: tika-test
STATUS: deployed
REVISION: 1
NOTES:
1. Get the application URL by running these commands:
  export POD_NAME=$(kubectl get pods --namespace tika-test -l "app.kubernetes.io/name=tika,app.kubernetes.io/instance=tika" -o jsonpath="{.items[0].metadata.name}")
  export CONTAINER_PORT=$(kubectl get pod --namespace tika-test $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}")
  echo "Visit http://127.0.0.1:9998 to use your application"
  kubectl --namespace tika-test port-forward $POD_NAME 9998:$CONTAINER_PORT

You may notice that the kubectl port forwarding experiences a timeout issue which ultimately kills the app. In this case you can run port formarding in a loop

while true; do kubectl --namespace tika-test port-forward $POD_NAME 9998:$CONTAINER_PORT ; done

... this should keep kubectl reconnecting on connection lost.

Install development version using master branch

  • Clone the git repo: git clone git@github.com:apache/tika-helm.git

  • Install it:

    • with Helm 3: helm install tika . --set image.tag=latest-full

Custom configuration for tika

To use custom configuration values for apache tika, use the tikaConfig key in the values.yaml. Example:

tikaConfig: |
  <?xml version="1.0" encoding="UTF-8"?>
  <properties>
    <parsers>
      <!-- Default Parser for most things, except for 2 mime types -->
      <parser class="org.apache.tika.parser.DefaultParser">
        <mime-exclude>image/jpeg</mime-exclude>
        <mime-exclude>application/pdf</mime-exclude>
      </parser>
    </parsers>
  </properties>

Upgrading

Please check artifacthub.io/changes in Chart.yaml before upgrading.

Configuration

ParameterDescriptionDefault
.........

Deprecated

ParameterDescriptionDefault
.........

Contributing

Please check CONTRIBUTING before any contribution or for any questions about our development and testing process.

More Information

For more infomation on Apache Tika Server, go to the Apache Tika Server documentation.

For more information on Apache Tika, go to the official Apache Tika project website.

For more information on the Apache Software Foundation, go to the Apache Software Foundation website.

Authors

Apache Tika Dev Team (dev@tika.apache.org)

License

The code is licensed permissively under the Apache License v2.0.