# JupyterLab Simple Helm Chart - Default values # Deploys JupyterLab using pure Kubernetes resources without an Operator. # JupyterLab Docker image # Full image ref: [registry/]repository[:tag] # Leave registry empty to use Docker Hub (default). # tag is optional if repository already contains a tag (e.g. "repo:tag"). image: registry: "quay.io" repository: "jupyter/scipy-notebook" tag: "latest" pullPolicy: IfNotPresent # Running state: 1=running, 0=stopped replicas: 1 # Compute resources resources: limits: cpu: "2000m" memory: "4096Mi" requests: cpu: "500m" memory: "1024Mi" # Number of NVIDIA GPUs to allocate (e.g. "1"). Leave empty to disable. # nvidia.com/gpu is set to the same value in both limits and requests (Kubernetes requirement). gpu: "" # JupyterLab process configuration jupyterConfig: # Access token (leave empty to disable token authentication) token: "" # Idle kernel culling: seconds of inactivity before kernel is shut down (0 = disabled) idleCullTimeout: 0 # Interval in seconds to check for idle kernels (only effective when idleCullTimeout > 0) idleCullInterval: 300 # Kubernetes Service annotations. # KIC 2.x+ reads timeout annotations from the Service resource (not Ingress). # Values must be in milliseconds. service: annotations: konghq.com/connect-timeout: "60000" konghq.com/read-timeout: "60000" konghq.com/write-timeout: "60000" # External access Ingress configuration ingress: enabled: true ingressClassName: "kong" annotations: cert-manager.io/cluster-issuer: "root-ca-issuer" cert-manager.io/duration: "8760h" cert-manager.io/renew-before: "720h" konghq.com/https-redirect-status-code: "301" konghq.com/protocols: "https" hosts: - host: "jupyter.example.com" paths: - / tls: - hosts: - "jupyter.example.com" secretName: "jupyter-tls-secret" # Home directory volume: PVC mounted at the user's home directory. # mountPath: mount path inside the container (defaults to /home/jovyan if left empty) homeVolume: enabled: false mountPath: "" size: "5Gi" storageClassName: "" accessMode: "ReadWriteOnce" # Data volume: PVC mounted at /. # mountPath: subdirectory name under the home directory (defaults to "data" if left empty) dataVolume: enabled: false mountPath: "" size: "5Gi" storageClassName: "" accessMode: "ReadWriteOnce" # Shared group volume mounts (optional) # groupVolumes: # - claimName: "pvc-shared-data" # mountPath: "/group_data" groupVolumes: [] # /dev/shm shared memory size limit (e.g. "512Mi", "1Gi"). Leave empty for no limit. shmSizeLimit: "512Mi" # TCP keepalive tuning at the Pod level. # Requires kubelet flag: --allowed-unsafe-sysctls=net.ipv4.tcp_keepalive_time,net.ipv4.tcp_keepalive_intvl,net.ipv4.tcp_keepalive_probes tcpKeepalive: enabled: false # Seconds of idle before the first keepalive probe is sent (Linux default: 7200) time: 120 # Seconds between consecutive keepalive probes (Linux default: 75) intvl: 10 # Number of unanswered probes before the connection is dropped (Linux default: 9) probes: 6 # imagePullSecrets for private registries imagePullSecrets: []