improwised-charts/erpnext
Pratik d4a1f447e6 fix volumePermissions 2021-04-06 11:05:55 +05:30
..
templates fix volumePermissions 2021-04-06 11:05:55 +05:30
.helmignore add erpnext 3.0.0 chart 2021-04-06 10:44:42 +05:30
Chart.yaml add erpnext 3.0.0 chart 2021-04-06 10:44:42 +05:30
README.md add erpnext 3.0.0 chart 2021-04-06 10:44:42 +05:30
values.yaml add erpnext 3.0.0 chart 2021-04-06 10:44:42 +05:30

README.md

Frappe / ERPNext

Frappe/ERPNext world's best 100% open source ERP.

ERPNext is a full-featured business management solution that helps SMEs to record all their business transactions in a single system. With ERPNext, SMEs can make informed, fact-based, timely decisions to remain ahead in the competition. It serves as the backbone of a business adding strength, transparency, and control to your growing enterprise.

TL;DR;

$ helm repo add frappe https://helm.erpnext.com

$ helm install frappe-bench-0001 --namespace erpnext frappe/erpnext \
    --set mariadbHost=mariadb.mariadb.svc.cluster.local \
    --set persistence.worker.storageClass=rook-cephfs \
    --set persistence.logs.storageClass=rook-cephfs

Introduction

This chart bootstraps a Frappe/ERPNext deployment on a Kubernetes cluster using the Helm package manager.

Prerequisites

  • Kubernetes 1.15+
  • Helm 3.0+
  • PV provisioner support in the underlying infrastructure
  • Mariadb host available for access

Installing the Chart

To install the chart with the release name frappe-bench-0001:

$ helm install frappe-bench-0001 --namespace erpnext frappe/erpnext \
    --set mariadbHost=mariadb.mariadb.svc.cluster.local \
    --set persistence.worker.storageClass=rook-cephfs \
    --set persistence.logs.storageClass=rook-cephfs

The command deploys ERPNext on the Kubernetes cluster in the default configuration. The Parameters section lists the parameters that can be configured during installation.

Tip: List all releases using helm list

Uninstalling the Chart

To uninstall/delete the frappe-bench-0001 deployment:

$ helm --namespace erpnext delete frappe-bench-0001

The command removes all the Kubernetes components associated with the chart and deletes the release.

Parameters

The following table lists the configurable parameters of the ERPNext chart and their default values.

Parameter Description Default
replicaCount Replica Count for App Deployments 1
nginxImage.repository Frappe/ERPNext Nginx Docker image registry frappe/erpnext-nginx
nginxImage.tag Frappe/ERPNext Nginx Docker image tag Latest Stable Release
nginxImage.pullPolicy Frappe/ERPNext Nginx Docker image pullPolicy IfNotPresent
pythonImage.repository Frappe/ERPNext Python Docker image registry frappe/erpnext-worker
pythonImage.tag Frappe/ERPNext Python Docker image tag Latest Stable Release
pythonImage.pullPolicy Frappe/ERPNext Python Docker image pullPolicy IfNotPresent
socketIOImage.repository Frappe/ERPNext SocketIO Docker image registry frappe/frappe-socketio
socketIOImage.tag Frappe/ERPNext SocketIO Docker image tag Latest Stable Release
socketIOImage.pullPolicy Frappe/ERPNext SocketIO Docker image pullPolicy IfNotPresent
redis.image.repository Redis Docker image registry bitnami/redis
redis.image.tag Redis Docker image tag Latest Stable Release
redis.image.pullPolicy Redis Docker image pullPolicy IfNotPresent
redis.extraEnv Redis Extra Environment Variables ALLOW_EMPTY_PASSWORD=true
frappePyPort Frappe/ERPNext Python Gunicorn Worker Port 8000
socketIOPort Frappe/ERPNext SocketIO Port 9000
upstreamRealIPAddress Trusted address (or ip range) of upstream proxy servers 127.0.0.1
upstreamRealIPRecursive Recursive look for upstream proxy server for real IP if on off
upstreamRealIPHeader Header name sent by your upstream proxy server X-Forwarded-For
mariadbHost MariaDB Host to connect (Required) nil
redisQueueHost Queue Redis Host to connect (Optional) nil
redisCacheHost Cache Redis Host to connect (Optional) nil
redisSocketIOHost Socket IO Redis Host to connect (Optional) nil
migrateJob.enable Run migrate sites Job after helm install / upgrade false
migrateJob.backup Backup before migrate sites Job true
persistence.worker.enable Creates PVC with helm release name true
persistence.worker.size Creates PVC with size 8Gi
persistence.worker.storageClass StorageClass with RWX, Required if PVC is created nil
persistence.logs.enable Creates PVC for logs volume with helm release name true
persistence.logs.size Creates PVC for logs volume with size 8Gi
persistence.logs.storageClass StorageClass with RWX, Required if PVC is created nil
volumePermissions.enabled Enable init container that changes volume permissions in the data directory (for cases where the default k8s runAsUser and fsUser values do not work) false

The above parameters map to the env variables defined in frappe_docker. For more information please refer to the frappe_docker images documentation.

Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,

$ helm install frappe-bench-0001 --namespace erpnext frappe/erpnext \
    --set mariadbHost=mariadb.mariadb.svc.cluster.local \
    --set persistence.worker.storageClass=rook-cephfs \
    --set persistence.logs.storageClass=rook-cephfs
    --set migrateJob.enable=true

The above command sets the MariaDB host to mariadb.mariadb.svc.cluster.local. Additionally it creates a PVC named with mentioned storageClass rook-cephfs and creates a migration job.

Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example,

$ helm install frappe-bench-0001 -f values.yaml erpnext