sitecoreops / sitecore-helm

Home of unofficial Sitecore Helm Charts

Home Page:https://sitecoreops.github.io/sitecore-helm/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Unofficial Sitecore Helm charts

Release Charts

Quick start:

# add this repo to helm
helm repo add sitecoreops https://sitecoreops.github.io/sitecore-helm

# refresh all repositories
helm repo update

# search charts
helm search repo sitecore

Changelog

June 2023

  • [Fix] SQL Container port number was wrong.

January 2021

  • [Change] Now requires Kubernetes v1.19.0 or later.
  • [Change] Using stable ingress api version networking.k8s.io/v1.

October 2020

  • [Added] Ability to turn off sql: Example --set sql.enabled=false

June 2020

  • [Added] Ability to override default environment variables on CM/CD deployments. Example --set cm.envOverride.SITECORE_CONNECTIONSTRINGS_CORE="XXX".
  • [Added] Ability to append environment variables on CM/CD deployments. Example --set cm.env[0].name="XXX" --set cm.env[0].value="YYY".

April 2020

  • [Added] Sitecore 9.3 XM chart sitecore930-xm.

Prerequisites

  • Kubernetes 1.15+
  • Helm 3+
  • A Sitecore license file.
  • Access to a Docker registry with Sitecore images (both Windows and Linux).

Examples

Minimal deployment (no ingress)

# create a new namespace for your deployment
$namespace = "awesome-sitecore-project"

kubectl create namespace $namespace

# deploy your Sitecore license file
kubectl create secret generic "license.xml" --from-file "C:\license\license.xml" --namespace $namespace

# install Sitecore XM (reference: https://helm.sh/docs/intro/using_helm/)
$release = "release1"

helm upgrade $release sitecoreops/sitecore930-xm --install --namespace $namespace `
    --set solr.image.tag="<LINUX IMAGE TAG OR DIGEST>" `
    --set sql.image.tag="<LINUX IMAGE TAG OR DIGEST>" `
    --set cd.image.tag="<WINDOWS IMAGE TAG OR DIGEST>" `
    --set cm.image.tag="<WINDOWS IMAGE TAG OR DIGEST>" `
    --set cm.adminPassword="<INSERT SECRET HERE>" `
    --set cm.unicornSharedSecret="<INSERT SECRET HERE>" `
    --set global.sqlSaPassword="<INSERT SECRET HERE>" `
    --set global.telerikEncryptionKey="<INSERT SECRET HERE>" `
    --timeout "30m0s" `
    --wait

# forward port from your host to the CM and then you can browse http://localhost:7777
kubectl port-forward deploy/$release-cm 7777:80 --namespace $namespace

Add --dry-run the to Helm upgrade/install command to verify deployment without installing anything.

Deployment with HTTP ingress

Requirements:

--set cd.ingress.enabled=true `
--set cd.ingress.annotations."kubernetes\.io/ingress\.class"="nginx" `
--set cd.ingress.annotations."nginx\.ingress\.kubernetes\.io/affinity"="cookie" `
--set cd.ingress.hosts[0].host="<HOST NAME FOR THE CD>" `
--set cd.ingress.hosts[0].paths[0]="/" `
--set cm.ingress.enabled=true `
--set cm.ingress.annotations."kubernetes\.io/ingress\.class"="nginx" `
--set cm.ingress.annotations."nginx\.ingress\.kubernetes\.io/proxy-connect-timeout"="60s" `
--set cm.ingress.annotations."nginx\.ingress\.kubernetes\.io/proxy-send-timeout"="60s" `
--set cm.ingress.annotations."nginx\.ingress\.kubernetes\.io/proxy-read-timeout"="60s" `
--set cm.ingress.hosts[0].host="<HOST NAME FOR THE CM>" `
--set cm.ingress.hosts[0].paths[0]="/" `

Deployment with HTTPS ingress and auto generated Let's Encrypt certificates

Requirements:

--set cd.ingress.enabled=true `
--set cd.ingress.annotations."kubernetes\.io/ingress\.class"="nginx" `
--set cd.ingress.annotations."nginx\.ingress\.kubernetes\.io/affinity"="cookie" `
--set cd.ingress.annotations."cert-manager\.io/issuer"="<NAME OF ISSUER>" `
--set cd.ingress.tls[0].hosts[0]="<HOST NAME FOR THE CD>" `
--set cd.ingress.tls[0].secretName="letsencrypt-tls-cd" `
--set cd.ingress.hosts[0].host="<HOST NAME FOR THE CD>" `
--set cd.ingress.hosts[0].paths[0]="/" `
--set cm.ingress.enabled=true `
--set cm.ingress.annotations."kubernetes\.io/ingress\.class"="nginx" `
--set cm.ingress.annotations."nginx\.ingress\.kubernetes\.io/proxy-connect-timeout"="60s" `
--set cm.ingress.annotations."nginx\.ingress\.kubernetes\.io/proxy-send-timeout"="60s" `
--set cm.ingress.annotations."nginx\.ingress\.kubernetes\.io/proxy-read-timeout"="60s" `
--set cm.ingress.annotations."cert-manager\.io/issuer"="<NAME OF ISSUER>" `
--set cm.ingress.tls[0].hosts[0]="<HOST NAME FOR THE CM>" `
--set cm.ingress.tls[0].secretName="letsencrypt-tls-cm" `
--set cm.ingress.hosts[0].host="<HOST NAME FOR THE CM>" `
--set cm.ingress.hosts[0].paths[0]="/" `

TODO's

About

Home of unofficial Sitecore Helm Charts

https://sitecoreops.github.io/sitecore-helm/

License:MIT License


Languages

Language:Mustache 100.0%