edu-sharing documentation
Breadcrumbs

Installing edu-sharing using Kubernetes (Helm)

Prerequisites

Make sure to have kubectl and helm installed on your system and working properly.

Add our edu-sharing helm repository

helm repo add edu-sharing https://artifacts.edu-sharing.com/repository/helm      

On your cluster site, make sure to have

  • An ingress setup

  • An cert issuer (in case you want to automatically get https certificates)

  • A storage class provider for RWM storage volumes

Configuration

Create a custom configuration yaml file for your install

global:
    cluster:
        storage:
            data:
                permission: false
                spec:
                    storageClassName: ssd
            share:
                permission: false
                spec:
                    storageClassName: ssd
edusharing_repository:     
    edusharing_repository_service:

        ingress:
            hosts:
                - &host my-domain.com
            tls:
                - hosts:
                    - *host
                  secretName: my-domain.com-tls
edusharing_services_rendering:
    edusharing_services_rendering_service:
        ingress:
            hosts:
                - &rsHost services.rendering.my-domain.com
            tls:
                - hosts:
                    - *rsHost
                  secretName: services.rendering.my-domain.com-tls

Note: This is just a very basic and minimal example. Refer to the helm chart values to find out what you can configure. We strongly recommend to configure the resources and limits to your specific needs.

Install the community helm release

for instance 9.0.0-RC0:

helm diff upgrade --install edu-sharing edu-sharing/edu_sharing-projects-community --version 9.0.0-RC0 -f values.yaml

or a snapshot version (only recommended for test enviroments):

helm diff upgrade --install edu-sharing edu-sharing/edu_sharing-projects-community --version 9.0.9998 -f values.yaml

Note: The chart “edu_sharing-projects-community” refers to the community version without any customizing. If you want to install a specific customer version, make sure to use the appropriate chart id.

Also check our release page for more available versions.

Install a custom helm release

If you want to rollout an customer specific release, make sure to have a custom username/password access to https://artifacts.edu-sharing.com/ (contact the support if you don’t have one)

Add the given user to your values.yaml

global:
    image:
        pullSecrets:
            - name: registry
image:
    pullSecrets:
        - name: registry
          server: docker.edu-sharing.com
          username: username
          password: xxxx

(This will allow the access from your cluster to the login protected images)

Install the release

helm diff upgrade --install edu-sharing edu-sharing/edu_sharing-projects-your-project --version 9.0.0-RC0 -f values.yaml