mirror of
				https://github.com/scm-manager/scm-manager.git
				synced 2025-10-31 10:35:56 +01:00 
			
		
		
		
	Adds compatibility for OCP (openshift container platform) and ICP (IBM cloud private) - Sets folder permissions to group 0, because the arbitrary assigned user ids in openshift are all part of group 0 - Removes usage of root user 0, because it is prohibited in some environments - Use numerical user id, because some environments do not accept non-numerical user ids - Removes initContainer for setting volume permissions, because it is not needed anymore - Removes chown in plugin script, because it is not needed anymore - Adds extraArgs option in Helm chart to add arguments on server startup, i.e. initial admin username and password Signed-off-by: pmarkiewka <philipp.markiewka@cloudogu.com>
		
			
				
	
	
		
			64 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| title: Kubernetes
 | |
| subtitle: Install scm-manager on kubernetes with helm
 | |
| displayToc: true
 | |
| ---
 | |
| 
 | |
| To install SCM-Manager on Kubernetes we offer a [Helm](https://helm.sh) chart.
 | |
| The chart is only tested with v3 of helm.
 | |
| 
 | |
| ## Quickstart
 | |
| 
 | |
| ```bash
 | |
| helm repo add scm-manager https://packages.scm-manager.org/repository/helm-v2-releases/
 | |
| helm repo update
 | |
| helm install scm-manager scm-manager/scm-manager
 | |
| ```
 | |
| 
 | |
| ## Configuration
 | |
| 
 | |
| If you want to customize the installation you can use a values files e.g.:
 | |
| 
 | |
| ```bash
 | |
| helm install scm-manager scm-manager/scm-manager --values=custom.yml
 | |
| ```
 | |
| 
 | |
| The following table list the configurable parameters of the SCM-Manager chart and their default values.
 | |
| 
 | |
| ## Chart Values
 | |
| 
 | |
| | Key | Type | Default | Description |
 | |
| |-----|------|---------|-------------|
 | |
| | affinity | object | `{}` | Affinity settings |
 | |
| | extraArgs | list | `[]` | Arguments to pass to the container |
 | |
| | extraEnv | string | `""` | Additional environment variables, parsed through tpl function |
 | |
| | extraEnvFrom | string | `""` | Additional environment variables mapped from Secret or ConfigMap, parsed through tpl function |
 | |
| | extraVolumeMounts | string | `""` | Add additional volumes mounts, parsed through tpl function |
 | |
| | extraVolumes | string | `""` | Add additional volumes, parsed through tpl function |
 | |
| | fullnameOverride | string | `""` | Override the full resource names |
 | |
| | image.pullSecret | string | `""` | Secret with credentials for the image registry |
 | |
| | image.pullPolicy | string | `"IfNotPresent"` | SCM-Manager image pull policy |
 | |
| | image.repository | string | `"scmmanager/scm-manager"` |  Name of SCM-Manager image |
 | |
| | image.tag | string | `"version-off Chart"` | Tag of SCM-Manager image |
 | |
| | ingress.annotations | object | `{}` | Ingress annotations |
 | |
| | ingress.enabled | bool | `false` | Enables ingress |
 | |
| | ingress.hosts | list | `["scm-manager.local"]` | Ingress hosts |
 | |
| | ingress.path | string | `"/"` | Ingress path |
 | |
| | ingress.tls | list | `[]` | Ingress TLS configuration |
 | |
| | lifecycleHooks | string | `""` |  |
 | |
| | nameOverride | string | `""` | Override the resource name prefix |
 | |
| | nodeSelector | object | `{}` | Node labels for pod assignment |
 | |
| | persistence.accessMode | string | `"ReadWriteOnce"` | The PVC access mode |
 | |
| | persistence.enabled | bool | `true` | Enable the use of a PVC for SCM-Manager home |
 | |
| | persistence.size | string | `"40Gi"` | The size of the PVC |
 | |
| | resources | object | `{}` | Resources allocation (Requests and Limits) |
 | |
| | securityContext | object | `{ fsGroup: 0 }` | Securitycontext for the pod |
 | |
| | service.port | int | `80` | k8s service port |
 | |
| | service.type | string | `"LoadBalancer"` | k8s service type |
 | |
| | ssh.dns | list | `["ssh.scm-manager.local"]` | dns names for the ssh service (requires installed external dns) |
 | |
| | ssh.enabled | bool | `false` | Enables ssh access (requires installed ssh plugin) |
 | |
| | ssh.port | int | `2222` | Intenernal ssh port (must match plugin configuration) |
 | |
| | ssh.service.port | int | `2222` | k8s service port for ssh |
 | |
| | ssh.service.type | string | `"LoadBalancer"` | k8s service type for ssh |
 | |
| | tolerations | list | `[]` | Toleration labels for pod assignment |
 |