Kubernetes Installation using Helm¶
Emakin Helm charts are available at https://github.com/6Kare/charts. This guide describes deploying Emakin on Kubernetes using these charts.
Prerequisites¶
- A Kubernetes cluster configured and accessible.
- Helm installed and configured to access your Kubernetes cluster.
Chart Installation¶
1. Add the Emakin Helm Repository¶
1 2 |
|
2. Install the Chart¶
The Helm tool deploys to the current Kubernetes namespace by default. To deploy to a different namespace, create the namespace beforehand.
Basic Installation (to the default namespace):
1 |
|
Installation to a Specific Namespace:
1 2 3 4 5 |
|
Replace mynamespace
with your desired namespace and adjust other parameters as needed.
Helm Chart Configuration¶
Default Values¶
The Helm chart uses the following defaults:
- Host:
emakin.mycompany.com
- Application Name:
mycompany.com
- Environment:
production
- All services are enabled by default.
Configurable Parameters¶
The following parameters can be customized during installation:
Parameter | Description | Default Value |
---|---|---|
host | Hostname for the application | emakin.mycompany.com |
storageClass | Storage class for persistent volumes | nfs |
ingressClass | Ingress class for the ingress controller | nginx |
externalIP | External IP for the ingress controller | (none) |
environment | Environment name | production |
emakin.subdomain | Subdomain for the application | emakin |
emakin.smtp.enabled | Enable SMTP service | true |
emakin.hostadm.enabled | Enable host administration | true |
emakin.hostadm.port | Port for host administration | 7180 |
db.externalProvider | External database provider | Postgres |
db.externalConnection | Connection string for external database | (none) |
db.name | Database name | EMAKIN |
db.user | Database username | EMAKIN |
db.password | Database password | EMAKIN |
letsencrypt.enabled | Enable Let's Encrypt certificates | true |
letsencrypt.email | Email for Let's Encrypt certificates | (none) |
onlyoffice.enabled | Enable OnlyOffice document server | true |
onlyoffice.subdomain | Subdomain for OnlyOffice | oeditor |
tika.enabled | Enable Apache Tika server | true |
clamav.enabled | Enable ClamAV antivirus server | true |
Persistent Volumes¶
The chart defines persistent volume claims (PVCs) for: BaseX, ClamAV, Emakin application data, and PostgreSQL. Ensure that corresponding persistent volumes are provisioned in your Kubernetes cluster before installation. PVC names are suffixed with the environment
value. Example PVC names (with production
environment):
basex-pv-production
clamav-pv-production
emakin-pv-production
postgres-pv-production
Accessing Emakin After Deployment¶
After successful deployment, access Emakin using the following:
- Application:
http://<host>
(e.g.,http://emakin.mycompany.com
) - Host Administration:
http://<host>:<emakin.hostadm.port>
(e.g.,http://emakin.mycompany.com:7180
)
Default credentials: Username: [email protected]
, Password: admin
Overriding Default Ports¶
To change the default web server ports, use the following environment variables:
1 2 |
|
This detailed guide provides comprehensive instructions for deploying Emakin on Kubernetes using Helm. Refer to the official Helm and Kubernetes documentation for further assistance.