This chart bootstraps a Nuxeo deployment on a Kubernetes cluster using the Helm package manager.
WARNING The
nuxeochart is not production-ready by default. It suits for a development or staging environment such as preview.
Currently, there is a single version of this chart for all the versions of Nuxeo.
The code samples below rely on the Helm 3 command line.
By default, this chart deploys the strict minimum to have Nuxeo running with:
- emptyDir volume for binaries.
- H2 database.
- Elasticsearch embedded.
- Chronicle Queue for the WorkManager and Nuxeo Streams.
To make a "real" deployment of Nuxeo in Kubernetes, you can have a look at:
- The different parameters in the values.yaml file.
- The Full Deployment section.
helm repo add nuxeo https://chartmuseum.platform.dev.nuxeo.com/
helm install my-release nuxeo/nuxeoThe nuxeo chart can be installed either:
- Remotely, from the Nuxeo chart repository.
- Locally, from a checkout of this GitHub repository.
To install the chart from the Nuxeo chart respository, add this repository to the Helm configuration:
helm repo add nuxeo https://chartmuseum.platform.dev.nuxeo.com/Then, use nuxeo/nuxeo as a replacement of NUXEO_CHART in the commands below.
To install the chart from a checkout of this GitHub repository, use nuxeo as a replacement of NUXEO_CHART in the commands below.
To install the nuxeo chart:
helm install RELEASE_NAME NUXEO_CHARTYou can override any value of the base values.yaml file by creating your own myvalues.yaml file and pass it to the helm install command:
helm install RELEASE_NAME NUXEO_CHART --values=myvalues.yamlYou can also pass values directly to the helm install command:
helm install RELEASE_NAME NUXEO_CHART --set nuxeo.image.tag=x.y.zFor example, to install some packages using a Nuxeo CLID:
helm install RELEASE_NAME NUXEO_CHART --set nuxeo.packages=nuxeo-web-ui,nuxeo-drive --set nuxeo.clid=NUXEO_CLIDTo see the templates of the installed release:
helm get manifest RELEASE_NAMEFor example, to pull another nuxeo image:
helm upgrade RELEASE_NAME NUXEO_CHART --set image.tag=2021.xhelm uninstall RELEASE_NAMEThe following tables lists some of the configurable parameters of this chart and their default values. See values.yaml for the complete list.
| Parameter | Description | Default |
|---|---|---|
nuxeo.image.repository |
Nuxeo image name | docker-private.packages.nuxeo.com/nuxeo/nuxeo |
nuxeo.image.tag |
Nuxeo image tag | 2021 |
When a pull request is merged to master:
- The patch version of the chart is automatically incremented.
- The chart is released to the Platform CI's ChartMuseum.
- A GitHub tag is created.
See the Jenkinsfile for more details.
The major and minor versions can be incremented manually.
To deploy Nuxeo along with MongoDB, Elasticsearch and Kafka, one way is to use Helmfile to deploy multiple charts. You can have a look at this helmfile sample.
To run it, you need to:
- Install the helmfile command line.
- Clone this repository or download the examples directory.
- In the
examplesdirectory, run:
helmfile --namepsace=NAMESPACE syncNAMESPACE is the target Kubernetes namespace for the various Helm releases.
The parameters of the nuxeo chart, such as the Nuxeo image, can be configured in the values-nuxeo.yaml.gotmpl file.
The parameters of the mongodb, elasticsearch and kafka charts can be configured in the values-CHART.yaml files.
Note: these values are just sample values. The related charts need a fine-grained configuration to be suitable for production, see the available values for each one of them: