Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Operate Coder v1 on Kubernetes

License

NotificationsYou must be signed in to change notification settings

coder/enterprise-helm

buildTwitter Follow

Coder moves developer workspaces to your cloud and centralizes their creation and management. Keep developers in flow with the power of the cloud and a superior developer experience.

The Coder Helm Chart is the best way to install and operate Coder on Kubernetes. It contains all the required components, and can scale to large deployments.

Coder Dashboard

Getting Started

⚠️Warning: This repository will not represent the latest Coder release. Referenceour installation docs for instructions on a tagged release.

Viewour docs for detailed installation instructions.

Values

KeyTypeDescriptionDefault
certsobjectCertificate that will be mounted inside Coder services.{"secret":{"key":"","name":""}}
certs.secret.keystringKey pointing to a certificate in the secret.""
certs.secret.namestringName of the secret.""
coderdobjectPrimary service responsible for all things Coder!{"affinity":{"podAntiAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app.kubernetes.io/name","operator":"In","values":["coderd"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":1}]}},"alternateHostnames":[],"annotations":{},"builtinProviderServiceAccount":{"annotations":{},"labels":{},"migrate":true},"clientTLS":{"secretName":""},"devurlsHost":"","extraEnvs":[],"extraLabels":{},"image":"","imagePullSecret":"","liveness":{"failureThreshold":30,"initialDelaySeconds":30,"periodSeconds":10,"timeoutSeconds":3},"networkPolicy":{"enable":true},"oidc":{"enableRefresh":false,"redirectOptions":{}},"podSecurityContext":{"runAsGroup":1000,"runAsNonRoot":true,"runAsUser":1000,"seccompProfile":{"type":"RuntimeDefault"}},"proxy":{"exempt":"cluster.local","http":"","https":""},"readiness":{"failureThreshold":15,"initialDelaySeconds":10,"periodSeconds":10,"timeoutSeconds":3},"replicas":1,"resources":{"limits":{"cpu":"1000m","memory":"1Gi"},"requests":{"cpu":"250m","memory":"512Mi"}},"reverseProxy":{"headers":[],"trustedOrigins":[]},"satellite":{"accessURL":"","enable":false,"primaryURL":""},"scim":{"authSecret":{"key":"secret","name":""},"enable":false},"securityContext":{"allowPrivilegeEscalation":false,"readOnlyRootFilesystem":true,"runAsGroup":1000,"runAsNonRoot":true,"runAsUser":1000,"seccompProfile":{"type":"RuntimeDefault"}},"serviceAnnotations":{},"serviceNodePorts":{"http":null,"https":null},"serviceSpec":{"externalTrafficPolicy":"Local","loadBalancerIP":"","loadBalancerSourceRanges":[],"type":"LoadBalancer"},"superAdmin":{"passwordSecret":{"key":"password","name":""}},"tls":{"devurlsHostSecretName":"","hostSecretName":""},"trustProxyIP":false,"workspaceServiceAccount":{"annotations":{},"labels":{}}}
coderd.affinityobjectAllows specifying an affinity rule for thecoderd deployment. The default rule prefers to schedule coderd pods on different nodes, which is only applicable if coderd.replicas is greater than 1.{"podAntiAffinity":{"preferredDuringSchedulingIgnoredDuringExecution":[{"podAffinityTerm":{"labelSelector":{"matchExpressions":[{"key":"app.kubernetes.io/name","operator":"In","values":["coderd"]}]},"topologyKey":"kubernetes.io/hostname"},"weight":1}]}}
coderd.alternateHostnameslistA list of hostnames that coderd (including satellites) will allow for OIDC. If this list is not set, all OIDC traffic will go to the configured access URL in the admin settings on the dashboard (or the satellite's primary URL as configured by Helm).[]
coderd.annotationsobjectApply annotations to the coderd deployment.https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/{}
coderd.builtinProviderServiceAccountobjectCustomize the built-in Kubernetes provider service account.{"annotations":{},"labels":{},"migrate":true}
coderd.builtinProviderServiceAccount.annotationsobjectA KV mapping of annotations. See:https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/{}
coderd.builtinProviderServiceAccount.labelsobjectAdd labels to the service account used for the built-in provider.{}
coderd.builtinProviderServiceAccount.migrateboolWill migrate the built-in workspace provider using the coded environment.true
coderd.clientTLSobjectClient-side TLS configuration for coderd.{"secretName":""}
coderd.clientTLS.secretNamestringSecret containing a PEM encoded cert file.""
coderd.devurlsHoststringWildcard hostname to allow matching against custom-created dev URLs. Leaving as an empty string results in DevURLs being disabled.""
coderd.extraEnvslistAdd additional environment variables to the coderd deployment containers. Overriding any environment variables that the Helm chart sets automatically is unsupported and will result in undefined behavior. You can find a list of the environment variables we set by default by inspecting the helm template files or by runningkubectl describe against your existing coderd deployment.https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/[]
coderd.extraLabelsobjectAllows specifying additional labels to pods in thecoderd deployment (.spec.template.metadata.labels).{}
coderd.imagestringInjected by Coder during release.""
coderd.imagePullSecretstringThe secret used for pulling the coderd image from a private registry.""
coderd.livenessobjectConfigure the liveness check for the coderd service.{"failureThreshold":30,"initialDelaySeconds":30,"periodSeconds":10,"timeoutSeconds":3}
coderd.networkPolicyobjectConfigure the network policy to apply to coderd.{"enable":true}
coderd.networkPolicy.enableboolManage a network policy for coderd using Helm. If false, no policies will be created for the Coder control plane.true
coderd.podSecurityContextobjectFields related to the pod's security context (as opposed to the container). Some fields are also present in the container security context, which will take precedence over these values.{"runAsGroup":1000,"runAsNonRoot":true,"runAsUser":1000,"seccompProfile":{"type":"RuntimeDefault"}}
coderd.podSecurityContext.runAsGroupintSets the group id of the pod. For security reasons, we recommend using a non-root group.1000
coderd.podSecurityContext.runAsNonRootboolRequires that containers in the pod run as an unprivileged user. If setting runAsUser to 0 (root), this will need to be set to false.true
coderd.podSecurityContext.runAsUserintSets the user id of the pod. For security reasons, we recommend using a non-root user.1000
coderd.podSecurityContext.seccompProfileobjectSets the seccomp profile for the pod. If set, the container security context setting will take precedence over this value.{"type":"RuntimeDefault"}
coderd.proxyobjectWhether Coder should initiate outbound connections using a proxy.{"exempt":"cluster.local","http":"","https":""}
coderd.proxy.exemptstringBypass the configured proxy rules for this comma-delimited list of hosts or prefixes. This corresponds to the no_proxy environment variable."cluster.local"
coderd.proxy.httpstringProxy to use for HTTP connections. If unset, coderd will initiate HTTP connections directly. This corresponds to the http_proxy environment variable.""
coderd.proxy.httpsstringProxy to use for HTTPS connections. If this is not set, coderd will use the HTTP proxy (if set), otherwise it will initiate HTTPS connections directly. This corresponds to the https_proxy environment variable.""
coderd.readinessobjectConfigure the readiness check for the coderd service.{"failureThreshold":15,"initialDelaySeconds":10,"periodSeconds":10,"timeoutSeconds":3}
coderd.replicasintThe number of Kubernetes Pod replicas. Consider increasing replicas as you add more nodes and more users are accessing Coder.1
coderd.resourcesobjectKubernetes resource specification for coderd pods. To unset a value, set it to "". To unset all values, set resources to nil. Consider increasing resources as more users are accessing Coder.{"limits":{"cpu":"1000m","memory":"1Gi"},"requests":{"cpu":"250m","memory":"512Mi"}}
coderd.reverseProxyobjectWhether Coder should trust proxy headers for inbound connections, important for ensuring correct IP addresses when an Ingress Controller, service mesh, or other Layer 7 reverse proxy are deployed in front of Coder.{"headers":[],"trustedOrigins":[]}
coderd.reverseProxy.headerslistA list of trusted headers.[]
coderd.reverseProxy.trustedOriginslistA list of IPv4 or IPv6 subnets to consider trusted, specified in CIDR format. If hosts are part of a matching network, the configured headers will be trusted; otherwise, coderd will rely on the connecting client IP address.[]
coderd.satelliteobjectDeploy a satellite to geodistribute access to workspaces for lower latency.{"accessURL":"","enable":false,"primaryURL":""}
coderd.satellite.accessURLstringURL of the satellite that clients will connect to. e.g.https://sydney.coder.myorg.com""
coderd.satellite.enableboolRun coderd as a satellite pointing to a primary deployment. Satellite enable low-latency access to workspaces all over the world. Read more:https://coder.com/docs/coder/latest/admin/satellitesfalse
coderd.satellite.primaryURLstringURL of the primary Coder deployment. Must be accessible from the satellite and clients. eg.https://coder.myorg.com""
coderd.scim.authSecret.keystringThe key of the secret that contains the SCIM auth header."secret"
coderd.scim.authSecret.namestringName of a secret that should be used to determine the auth header used for the SCIM server. The secret should be contained in the fieldsecret, or the manually specified one.""
coderd.scim.enableboolEnable SCIM support in coderd. SCIM allows you to automatically provision/deprovision users. If true, authSecret.name must be set.false
coderd.securityContextobjectFields related to the container's security context (as opposed to the pod). Some fields are also present in the pod security context, in which case these values will take precedence.{"allowPrivilegeEscalation":false,"readOnlyRootFilesystem":true,"runAsGroup":1000,"runAsNonRoot":true,"runAsUser":1000,"seccompProfile":{"type":"RuntimeDefault"}}
coderd.securityContext.allowPrivilegeEscalationboolControls whether the container can gain additional privileges, such as escalating to root. It is recommended to leave this setting disabled in production.false
coderd.securityContext.readOnlyRootFilesystemboolMounts the container's root filesystem as read-only. It is recommended to leave this setting enabled in production. This will override the same setting in the podtrue
coderd.securityContext.runAsGroupintSets the group id of the pod. For security reasons, we recommend using a non-root group.1000
coderd.securityContext.runAsNonRootboolRequires that the coderd and migrations containers run as an unprivileged user. If setting runAsUser to 0 (root), this will need to be set to false.true
coderd.securityContext.runAsUserintSets the user id of the pod. For security reasons, we recommend using a non-root user.1000
coderd.securityContext.seccompProfileobjectSets the seccomp profile for the migration and runtime containers.{"type":"RuntimeDefault"}
coderd.serviceAnnotationsobjectApply annotations to the coderd service.https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/{}
coderd.serviceNodePortsobjectAllows manually setting static node ports for the coderd service. This is only helpful if static ports are required, and usually should be left alone. By default these are dynamically chosen.{"http":null,"https":null}
coderd.serviceNodePorts.httpstringSets a static 'coderd' service non-TLS nodePort. This should usually be omitted.nil
coderd.serviceNodePorts.httpsstringSets a static 'coderd' service TLS nodePort This should usually be omitted.nil
coderd.serviceSpecobjectSpecification to inject for the coderd service. See:https://kubernetes.io/docs/concepts/services-networking/service/{"externalTrafficPolicy":"Local","loadBalancerIP":"","loadBalancerSourceRanges":[],"type":"LoadBalancer"}
coderd.serviceSpec.externalTrafficPolicystringSet the traffic policy for the service. See:https://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip"Local"
coderd.serviceSpec.loadBalancerIPstringSet the IP address of the coderd service.""
coderd.serviceSpec.loadBalancerSourceRangeslistTraffic through the LoadBalancer will be restricted to the specified client IPs. This field will be ignored if the cloud provider does not support this feature.[]
coderd.serviceSpec.typestringSet the type of Service. See:https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types"LoadBalancer"
coderd.superAdmin.passwordSecret.keystringThe key of the secret that contains the super admin password."password"
coderd.superAdmin.passwordSecret.namestringName of a secret that should be used to determine the password for the super admin account. The password should be contained in the fieldpassword, or the manually specified one.""
coderd.tlsobjectTLS configuration for coderd. These options will override dashboard configuration.{"devurlsHostSecretName":"","hostSecretName":""}
coderd.tls.devurlsHostSecretNamestringThe secret to use for DevURL TLS.""
coderd.tls.hostSecretNamestringThe secret to use for TLS.""
coderd.trustProxyIPboolConfigures Coder to accept X-Real-IP and X-Forwarded-For headers from any origin. This option is deprecated and will be removed in a future release. Use the coderd.reverseProxy setting instead, which supports configuring an allowlist of trusted origins.false
coderd.workspaceServiceAccountobjectCustomize the default service account used for workspaces.{"annotations":{},"labels":{}}
coderd.workspaceServiceAccount.annotationsobjectA KV mapping of annotations. See:https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/{}
coderd.workspaceServiceAccount.labelsobjectAdd labels to the service account used for workspaces.{}
envboxobjectRequired for running Docker inside containers. See requirements:https://coder.com/docs/coder/latest/admin/workspace-management/cvms{"image":""}
envbox.imagestringInjected by Coder during release.""
ingressobjectConfigure an Ingress to route traffic to Coder services.{"annotations":{"nginx.ingress.kubernetes.io/proxy-body-size":"0"},"className":"","enable":false,"host":"","tls":{"enable":false}}
ingress.annotationsobjectAdditional annotations to add to the Ingress object. The behavior is typically dependent on the Ingress Controller implementation, and useful for managing features like TLS termination.{"nginx.ingress.kubernetes.io/proxy-body-size":"0"}
ingress.classNamestringThe ingressClassName to set on the Ingress.""
ingress.enableboolA boolean controlling whether to create an Ingress.false
ingress.hoststringThe hostname to proxy to the Coder installation. The cluster Ingress Controller typically uses server name indication or the HTTP Host header to route traffic. The dev URLs hostname is specified in coderd.devurlsHost.""
ingress.tlsobjectConfigures TLS settings for the Ingress. TLS certificates are specified in coderd.tls.hostSecretName and coderd.tls.devurlsHostSecretName.{"enable":false}
ingress.tls.enableboolDetermines whether the Ingress handles TLS.false
loggingobjectConfigures the logging format and output of Coder.{"human":"/dev/stderr","json":"","splunk":{"channel":"","token":"","url":""},"stackdriver":"","verbose":true}
logging.humanstringLocation to send logs that are formatted for readability. Set to an empty string to disable."/dev/stderr"
logging.jsonstringLocation to send logs that are formatted as JSON. Set to an empty string to disable.""
logging.splunkobjectCoder can send logs directly to Splunk in addition to file-based output.{"channel":"","token":"","url":""}
logging.splunk.tokenstringSplunk HEC collector token.""
logging.splunk.urlstringSplunk HEC collector endpoint.""
logging.stackdriverstringLocation to send logs that are formatted for Google Stackdriver. Set to an empty string to disable.""
logging.verboseboolToggles coderd debug logging.true
metricsobjectConfigure various metrics to gain observability into Coder.{"amplitudeKey":""}
metrics.amplitudeKeystringEnables telemetry pushing to Amplitude. Amplitude records how users interact with Coder, which is used to improve the product. No events store any personal information. Amplitude can be found here:https://amplitude.com/ Keep empty to disable.""
postgres.connectorstringOption for configuring database connector type. valid values are: - "postgres" -- default connector - "awsiamrds" -- uses AWS IAM account in environment to authenticate using IAM to connect to an RDS instance."postgres"
postgres.databasestringName of the database that Coder will use. You must create this database first.""
postgres.defaultobjectConfigure a built-in PostgreSQL deployment.{"annotations":{},"enable":true,"image":"","networkPolicy":{"enable":true},"resources":{"limits":{"cpu":"250m","memory":"1Gi"},"requests":{"cpu":"250m","memory":"1Gi","storage":"10Gi"}},"storageClassName":""}
postgres.default.annotationsobjectApply annotations to the default postgres service.https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/{}
postgres.default.enableboolDeploys a PostgreSQL instance. We recommend using an external PostgreSQL instance in production. If true, all other values are ignored.true
postgres.default.imagestringInjected by Coder during release.""
postgres.default.networkPolicyobjectConfigure the network policy to apply to the built-in PostgreSQL deployment.{"enable":true}
postgres.default.networkPolicy.enableboolManage a network policy for PostgreSQL using Helm. If false, no policies will be created for the built-in database.true
postgres.default.resourcesobjectKubernetes resource specification for the PostgreSQL pod. To unset a value, set it to "". To unset all values, set resources to nil.{"limits":{"cpu":"250m","memory":"1Gi"},"requests":{"cpu":"250m","memory":"1Gi","storage":"10Gi"}}
postgres.default.resources.requests.storagestringSpecifies the size of the volume claim for persisting the database."10Gi"
postgres.default.storageClassNamestringSet the storageClass to store the database.""
postgres.hoststringHost of the external PostgreSQL instance.""
postgres.noPasswordEnvboolIf enabled, passwordSecret will be specified as a volumeMount and the envDB_PASSWORD_PATH will be set instead to point to that location. The default behaviour is to set the environment variableDB_PASSWORD to the value of the postgres password secret.false
postgres.passwordSecretstringName of an existing secret in the current namespace with the password of the PostgreSQL instance. The password must be contained in the secret fieldpassword. This should be set to an empty string if the database does not require a password to connect.""
postgres.portstringPort of the external PostgreSQL instance.""
postgres.searchPathstringOptional. Schema for coder tables in the external PostgresSQL instance. This changes the 'search_path' client configuration option (https://www.postgresql.org/docs/current/runtime-config-client.html). By default, the 'public' schema will be used.""
postgres.sslobjectOptions for configuring the SSL cert, key, and root cert when connecting to Postgres.{"certSecret":{"key":"","name":""},"keySecret":{"key":"","name":""},"rootCertSecret":{"key":"","name":""}}
postgres.ssl.certSecretobjectSecret containing a PEM encoded cert file.{"key":"","name":""}
postgres.ssl.certSecret.keystringKey pointing to a certificate in the secret.""
postgres.ssl.certSecret.namestringName of the secret.""
postgres.ssl.keySecretobjectSecret containing a PEM encoded key file.{"key":"","name":""}
postgres.ssl.keySecret.keystringKey pointing to a certificate in the secret.""
postgres.ssl.keySecret.namestringName of the secret.""
postgres.ssl.rootCertSecretobjectSecret containing a PEM encoded root cert file.{"key":"","name":""}
postgres.ssl.rootCertSecret.keystringKey pointing to a certificate in the secret.""
postgres.ssl.rootCertSecret.namestringName of the secret.""
postgres.sslModestringProvides variable levels of protection for the PostgreSQL connection. For acceptable values, see:https://www.postgresql.org/docs/11/libpq-ssl.html"require"
postgres.userstringUser of the external PostgreSQL instance.""
servicesobjectKubernetes Service configuration that applies to Coder services.{"annotations":{},"clusterDomainSuffix":".svc.cluster.local","nodeSelector":{"kubernetes.io/arch":"amd64","kubernetes.io/os":"linux"},"tolerations":[],"type":"ClusterIP"}
services.annotationsobjectA KV mapping of annotations. See:https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/ DEPRECATED -- Please use the annotations value for each object.{}
services.clusterDomainSuffixstringCustom domain suffix for DNS resolution in your cluster. See:https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/".svc.cluster.local"
services.nodeSelectorobjectSee:https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#nodeselector{"kubernetes.io/arch":"amd64","kubernetes.io/os":"linux"}
services.tolerationslistEach element is a toleration object. See:https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/[]
services.typestringSee the following for configurable types:https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types"ClusterIP"

Contributing

Thanks for considering a contribution to this Chart!Please seeCONTRIBUTING.md for our conventions and practices.

Support

If you experience issues, have feedback, or want to ask a question, open an issue orpull request in this repository. Feel free tocontact us instead.

Copyright and License

Copyright (C) 2020-2022 Coder Technologies Inc.

This program is free software: you can redistribute it and/or modify it underthe terms of the GNU General Public License as published by the Free SoftwareFoundation, either version 3 of the License, or (at your option) any laterversion.

This program is distributed in the hope that it will be useful, but WITHOUT ANYWARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR APARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along withthis program. If not, seehttps://www.gnu.org/licenses/.

About

Operate Coder v1 on Kubernetes

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks


[8]ページ先頭

©2009-2025 Movatter.jp