This Helm chart installs Plugin CRM for Midaz, a high-performance and open-source ledger.
To install Plugin CRM using Helm, run the following command:
$ helm install plugin-crm oci://registry-1.docker.io/lerianstudio/plugin-crm --version <> -n midaz-plugins --create-namespace
This will create a new namespace called `midaz-plugins` if it doesn't already exist and deploy the Plugin CRM Helm chart.
After installation, you can verify that the release was successful by listing the Helm releases in the `midaz-plugins` namespace:
```console
$ helm list -n midaz-plugins
To upgrade the chart to a new version:
$ helm upgrade plugin-crm oci://registry-1.docker.io/lerianstudio/plugin-crm --version <new-version> -n midaz-plugins
To uninstall the chart:
$ helm uninstall plugin-crm -n midaz-plugins
The Plugin CRM Helm Chart optionally supports different Ingress Controllers for exposing services when necessary. Below are the configurations for commonly used controllers.
To use the NGINX Ingress Controller, configure the values.yaml
as follows:
ingress:
enabled: true
className: "nginx"
annotations: {}
hosts:
- host: midaz.example.com
paths:
- path: /
pathType: Prefix
tls:
- secretName: midaz-tls
hosts:
- midaz.example.com
Parameter | Description | Default |
---|---|---|
crm.replicaCount |
Number of replicas for the deployment | 1 |
crm.image.repository |
Repository for the container image | ghcr.io/lerianstudio/plugin-crm |
crm.image.pullPolicy |
Image pull policy | Always |
crm.image.tag |
Image tag used for deployment | 1.3.0 |
crm.imagePullSecrets |
Secrets for pulling images from a private registry | [{"name": "regcred"}] |
crm.nameOverride |
Overrides the default generated name by Helm | "" |
crm.fullnameOverride |
Overrides the full name generated by Helm | "" |
crm.ingress.enabled |
Enable or disable ingress | false |
crm.ingress.className |
Ingress class name | "" |
crm.ingress.annotations |
Additional ingress annotations | {} |
crm.ingress.hosts |
Ingress host configuration | [{"host": "", "paths": [{"path": "/", "pathType": "Prefix"}]}] |
crm.ingress.tls |
TLS configuration for ingress | [] |
crm.service.type |
Kubernetes service type | ClusterIP |
crm.service.port |
Service port | 4003 |
crm.deploymentStrategy |
Deployment strategy | See values.yaml |
crm.podSecurityContext |
Pod security context | {} |
crm.securityContext |
Security context for the container | See values.yaml |
crm.pdb.enabled |
Enable or disable PodDisruptionBudget | true |
crm.pdb.maxUnavailable |
Maximum number of unavailable pods | 1 |
crm.pdb.minAvailable |
Minimum number of available pods | 0 |
crm.resources |
CPU and memory limits for pods | See values.yaml |
crm.autoscaling.enabled |
Enable or disable horizontal pod autoscaling | true |
crm.autoscaling.minReplicas |
Minimum number of replicas | 1 |
crm.autoscaling.maxReplicas |
Maximum number of replicas | 3 |
crm.nodeSelector |
Node selector for scheduling pods | {} |
crm.tolerations |
Tolerations for scheduling on tainted nodes | {} |
crm.affinity |
Affinity rules for pod scheduling | {} |
crm.extraEnvVars |
Extra environment variables to be added to the deployment | {} |
crm.useExistingSecret |
Use an existing secret instead of creating a new one | false |
crm.existingSecretName |
The name of the existing secret to use | "" |
Parameter | Description | Default |
---|---|---|
frontend.enabled |
Enable or disable the frontend service | true |
frontend.replicaCount |
Number of replicas for the deployment | 1 |
frontend.image.repository |
Repository for the frontend service container image | "" |
frontend.image.pullPolicy |
Image pull policy | IfNotPresent |
frontend.image.tag |
Image tag used for deployment | "" |
frontend.imagePullSecrets |
Secrets for pulling images from a private registry | [] |
frontend.podAnnotations |
Annotations to be added to the Pod | {} |
frontend.service.type |
Kubernetes service type | ClusterIP |
frontend.service.port |
Service port | 8082 |
frontend.ingress.enabled |
Enable or disable ingress | false |
frontend.resources |
CPU and memory limits for pods | See values.yaml |
frontend.autoscaling.enabled |
Enable or disable horizontal pod autoscaling | false |
frontend.serviceAccount.create |
Specifies whether a ServiceAccount should be created | true |
frontend.serviceAccount.name |
Name of the service account | "" |
frontend.configmap |
ConfigMap for the frontend service | See values.yaml |
Parameter | Description | Default |
---|---|---|
mongodb.enabled |
Enable the MongoDB dependency | true |
mongodb.external |
Use an external MongoDB instance | false |
mongodb.auth.enabled |
Enable authentication for MongoDB | true |
mongodb.auth.rootUser |
Root user for MongoDB | plugin-crm |
mongodb.auth.rootPassword |
Root password for MongoDB | lerian |
mongodb.persistence.size |
Persistence size for MongoDB | 8Gi |
mongodb.resourcesPreset |
Resource preset for MongoDB | medium |
mongodb.enabled
to false
in the values file.Note: If you have an existing MongoDB instance, you can disable this dependency and configure Midaz Components to use your external MongoDB, like this:
configmap:
MONGO_HOST: { your-host }
MONGO_NAME: { your-host-name }
MONGO_USER: { your-host-user }
MONGO_PORT: { your-host-port }
secrets:
MONGO_PASSWORD: { your-host-pass }
For more information, see the Lerian Studio Documentation or contact the maintainers.