From f41b95d9ba2f0254147e505004520a77030d92a5 Mon Sep 17 00:00:00 2001 From: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Date: Wed, 12 Feb 2025 04:25:18 +0000 Subject: [PATCH 1/8] init rancher doc --- docs/images/icons/rancher.svg | 29 ++++++++ docs/install/rancher.md | 126 ++++++++++++++++++++++++++++++++++ docs/manifest.json | 6 ++ 3 files changed, 161 insertions(+) create mode 100644 docs/images/icons/rancher.svg create mode 100644 docs/install/rancher.md diff --git a/docs/images/icons/rancher.svg b/docs/images/icons/rancher.svg new file mode 100644 index 0000000000000..65183e058a88c --- /dev/null +++ b/docs/images/icons/rancher.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/install/rancher.md b/docs/install/rancher.md new file mode 100644 index 0000000000000..495dfd8fae46c --- /dev/null +++ b/docs/install/rancher.md @@ -0,0 +1,126 @@ +# Deploy Coder on Rancher + +You can deploy Coder on Rancher using a +[Workload](https://ranchermanager.docs.rancher.com/getting-started/quick-start-guides/deploy-workloads/nodeports). + +## Requirements + +- [Rancher](https://ranchermanager.docs.rancher.com/getting-started/installation-and-upgrade/install-upgrade-on-a-kubernetes-cluster) + - alternative link: [Deploy Rancher Manager](https://ranchermanager.docs.rancher.com/getting-started/quick-start-guides/deploy-rancher-manager) +- other requirements + +## Configure Rancher + +The first thing to do + +## Install Coder with Helm + +```shell +helm repo add coder-v2 https://helm.coder.com/v2 +``` + +Create a `values.yaml` with the configuration settings you'd like for your +deployment. For example: + +```yaml +coder: + # You can specify any environment variables you'd like to pass to Coder + # here. Coder consumes environment variables listed in + # `coder server --help`, and these environment variables are also passed + # to the workspace provisioner (so you can consume them in your Terraform + # templates for auth keys etc.). + # + # Please keep in mind that you should not set `CODER_HTTP_ADDRESS`, + # `CODER_TLS_ENABLE`, `CODER_TLS_CERT_FILE` or `CODER_TLS_KEY_FILE` as + # they are already set by the Helm chart and will cause conflicts. + env: + - name: CODER_PG_CONNECTION_URL + valueFrom: + secretKeyRef: + # You'll need to create a secret called coder-db-url with your + # Postgres connection URL like: + # postgres://coder:password@postgres:5432/coder?sslmode=disable + name: coder-db-url + key: url + + # (Optional) For production deployments the access URL should be set. + # If you're just trying Coder, access the dashboard via the service IP. + # - name: CODER_ACCESS_URL + # value: "https://coder.example.com" + + #tls: + # secretNames: + # - my-tls-secret-name +``` + +> You can view our +> [Helm README](https://github.com/coder/coder/blob/main/helm#readme) for +> details on the values that are available, or you can view the +> [values.yaml](https://github.com/coder/coder/blob/main/helm/coder/values.yaml) +> file directly. + +We support two release channels: mainline and stable - read the +[Releases](./releases.md) page to learn more about which best suits your team. + +- **Mainline** Coder release: + + + + ```shell + helm install coder coder-v2/coder \ + --namespace coder \ + --values values.yaml \ + --version 2.18.0 + ``` + +- **Stable** Coder release: + + + + ```shell + helm install coder coder-v2/coder \ + --namespace coder \ + --values values.yaml \ + --version 2.17.2 + ``` + +You can watch Coder start up by running `kubectl get pods -n coder`. Once Coder +has started, the `coder-*` pods should enter the `Running` state. + +## Log in to Coder + +Use `kubectl get svc -n coder` to get the IP address of the LoadBalancer. Visit +this in the browser to set up your first account. + +If you do not have a domain, you should set `CODER_ACCESS_URL` to this URL in +the Helm chart and upgrade Coder (see below). This allows workspaces to connect +to the proper Coder URL. + +## Upgrading Coder in Rancher + +To upgrade Coder in the future or change values, you can run the following +command: + +```shell +helm repo update +helm upgrade coder coder-v2/coder \ + --namespace coder \ + -f values.yaml +``` + +## Coder Observability Chart + +Use the [Observability Helm chart](https://github.com/coder/observability) for a +pre-built set of dashboards to monitor your control plane over time. It includes +Grafana, Prometheus, Loki, and Alert Manager out-of-the-box, and can be deployed +on your existing Grafana instance. + +We recommend that all administrators deploying on Kubernetes set the +observability bundle up with the control plane from the start. For installation +instructions, visit the +[observability repository](https://github.com/coder/observability?tab=readme-ov-file#installation). + +## Next steps + +- [Create your first template](../tutorials/template-from-scratch.md) +- [Control plane configuration](../admin/setup/index.md) diff --git a/docs/manifest.json b/docs/manifest.json index 3b49c2321ccef..c550a67a2bd1a 100644 --- a/docs/manifest.json +++ b/docs/manifest.json @@ -43,6 +43,12 @@ "path": "./install/kubernetes.md", "icon_path": "./images/icons/kubernetes.svg" }, + { + "title": "Rancher", + "description": "Deploy Coder on Rancher", + "path": "./install/rancher.md", + "icon_path": "./images/icons/rancher.svg" + }, { "title": "OpenShift", "description": "Install Coder on OpenShift", From fae0a0c101f8e78d0a68f11f78ae77ecd9332393 Mon Sep 17 00:00:00 2001 From: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Date: Tue, 25 Feb 2025 03:15:10 +0000 Subject: [PATCH 2/8] version numbers --- docs/install/rancher.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/install/rancher.md b/docs/install/rancher.md index 495dfd8fae46c..37887a9011811 100644 --- a/docs/install/rancher.md +++ b/docs/install/rancher.md @@ -70,7 +70,7 @@ We support two release channels: mainline and stable - read the helm install coder coder-v2/coder \ --namespace coder \ --values values.yaml \ - --version 2.18.0 + --version 2.19.0 ``` - **Stable** Coder release: @@ -81,7 +81,7 @@ We support two release channels: mainline and stable - read the helm install coder coder-v2/coder \ --namespace coder \ --values values.yaml \ - --version 2.17.2 + --version 2.18.5 ``` You can watch Coder start up by running `kubectl get pods -n coder`. Once Coder From 87280cff5dac5c39836c01446d8ddb9885defde5 Mon Sep 17 00:00:00 2001 From: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Date: Tue, 25 Feb 2025 03:39:39 +0000 Subject: [PATCH 3/8] update from gdoc --- docs/install/rancher.md | 203 ++++++++++++++++++---------------------- 1 file changed, 89 insertions(+), 114 deletions(-) diff --git a/docs/install/rancher.md b/docs/install/rancher.md index 37887a9011811..18b134b2e0635 100644 --- a/docs/install/rancher.md +++ b/docs/install/rancher.md @@ -5,120 +5,95 @@ You can deploy Coder on Rancher using a ## Requirements -- [Rancher](https://ranchermanager.docs.rancher.com/getting-started/installation-and-upgrade/install-upgrade-on-a-kubernetes-cluster) - - alternative link: [Deploy Rancher Manager](https://ranchermanager.docs.rancher.com/getting-started/quick-start-guides/deploy-rancher-manager) -- other requirements - -## Configure Rancher - -The first thing to do - -## Install Coder with Helm - -```shell -helm repo add coder-v2 https://helm.coder.com/v2 -``` - -Create a `values.yaml` with the configuration settings you'd like for your -deployment. For example: - -```yaml -coder: - # You can specify any environment variables you'd like to pass to Coder - # here. Coder consumes environment variables listed in - # `coder server --help`, and these environment variables are also passed - # to the workspace provisioner (so you can consume them in your Terraform - # templates for auth keys etc.). - # - # Please keep in mind that you should not set `CODER_HTTP_ADDRESS`, - # `CODER_TLS_ENABLE`, `CODER_TLS_CERT_FILE` or `CODER_TLS_KEY_FILE` as - # they are already set by the Helm chart and will cause conflicts. - env: - - name: CODER_PG_CONNECTION_URL - valueFrom: - secretKeyRef: - # You'll need to create a secret called coder-db-url with your - # Postgres connection URL like: - # postgres://coder:password@postgres:5432/coder?sslmode=disable - name: coder-db-url - key: url - - # (Optional) For production deployments the access URL should be set. - # If you're just trying Coder, access the dashboard via the service IP. - # - name: CODER_ACCESS_URL - # value: "https://coder.example.com" - - #tls: - # secretNames: - # - my-tls-secret-name -``` - -> You can view our -> [Helm README](https://github.com/coder/coder/blob/main/helm#readme) for -> details on the values that are available, or you can view the -> [values.yaml](https://github.com/coder/coder/blob/main/helm/coder/values.yaml) -> file directly. - -We support two release channels: mainline and stable - read the -[Releases](./releases.md) page to learn more about which best suits your team. - -- **Mainline** Coder release: - - - - ```shell - helm install coder coder-v2/coder \ - --namespace coder \ - --values values.yaml \ - --version 2.19.0 - ``` - -- **Stable** Coder release: - - - - ```shell - helm install coder coder-v2/coder \ - --namespace coder \ - --values values.yaml \ - --version 2.18.5 - ``` - -You can watch Coder start up by running `kubectl get pods -n coder`. Once Coder -has started, the `coder-*` pods should enter the `Running` state. - -## Log in to Coder - -Use `kubectl get svc -n coder` to get the IP address of the LoadBalancer. Visit -this in the browser to set up your first account. - -If you do not have a domain, you should set `CODER_ACCESS_URL` to this URL in -the Helm chart and upgrade Coder (see below). This allows workspaces to connect -to the proper Coder URL. - -## Upgrading Coder in Rancher - -To upgrade Coder in the future or change values, you can run the following -command: - -```shell -helm repo update -helm upgrade coder coder-v2/coder \ - --namespace coder \ - -f values.yaml -``` - -## Coder Observability Chart - -Use the [Observability Helm chart](https://github.com/coder/observability) for a -pre-built set of dashboards to monitor your control plane over time. It includes -Grafana, Prometheus, Loki, and Alert Manager out-of-the-box, and can be deployed -on your existing Grafana instance. - -We recommend that all administrators deploying on Kubernetes set the -observability bundle up with the control plane from the start. For installation -instructions, visit the -[observability repository](https://github.com/coder/observability?tab=readme-ov-file#installation). +- [SUSE Rancher Manager](https://ranchermanager.docs.rancher.com/getting-started/installation-and-upgrade/install-upgrade-on-a-kubernetes-cluster) running Kubernetes (K8s) 1.19+ with [SUSE Rancher Prime distribution](https://documentation.suse.com/cloudnative/rancher-manager/latest/en/integrations/kubernetes-distributions.html) (Rancher Manager 2.10+) +- Helm 3.5+ installed +- Workload Kubernetes cluster for Coder + +## Install Coder with SUSE Rancher Manager + +1. Create a namespace for the Coder control plane. In this tutorial, we call it `coder`: + + ```shell + kubectl create namespace coder + ``` + +1. Create a PostgreSQL instance: + +
+ + Coder does not manage a database server for you. This is required for storing + data about your Coder deployment and resources. + + ### Managed PostgreSQL (recommended) + + If you're in a public cloud such as + [Google Cloud](https://cloud.google.com/sql/docs/postgres/), + [AWS](https://aws.amazon.com/rds/postgresql/), + [Azure](https://docs.microsoft.com/en-us/azure/postgresql/), or + [DigitalOcean](https://www.digitalocean.com/products/managed-databases-postgresql), + you can use the managed PostgreSQL offerings they provide. Make sure that the + PostgreSQL service is running and accessible from your cluster. It should be in + the same network, same project, etc. + + ### In-Cluster PostgreSQL (for proof of concepts) + + You can install Postgres manually on your cluster using the + [Bitnami PostgreSQL Helm chart](https://github.com/bitnami/charts/tree/master/bitnami/postgresql#readme). + There are some [helpful guides](https://phoenixnap.com/kb/postgresql-kubernetes) + on the internet that explain sensible configurations for this chart. + + Here's one example: + + ```console + # Install PostgreSQL + helm repo add bitnami https://charts.bitnami.com/bitnami + helm install coder-db bitnami/postgresql \ + --namespace coder \ + --set auth.username=coder \ + --set auth.password=coder \ + --set auth.database=coder \ + --set persistence.size=10Gi + ``` + + The cluster-internal DB URL for the above database is: + + ```shell + postgres://coder:coder@coder-db-postgresql.coder.svc.cluster.local:5432/coder?sslmode=disable + ``` + + You can optionally use the + [Postgres operator](https://github.com/zalando/postgres-operator) to manage + PostgreSQL deployments on your Kubernetes cluster. + +
+ +1. Create the PostgreSQL secret. + + Create a secret with the PostgreSQL database URL string. In the case of the + self-managed PostgreSQL, the address will be: + + ```shell + kubectl create secret generic coder-db-url -n coder \ + --from-literal=url="postgres://coder:coder@coder-db-postgresql.coder.svc.cluster.local:5432/coder?sslmode=disable" + ``` + +1. Select the target workload K8s cluster for Coder in the Rancher Manager console and access the Kubectl shell. + +1. From the Cluster Manager console, go to **Apps** > **Charts** and select **Partners**. + +1. From the Chart providers, search for Coder. + +1. Select **Coder**, then **Install**. + +1. Select the target namespace you created for Coder and select **Customize Helm options before install**, then **Next**. + +1. Configure Values used by Helm that help define the Coder App. Review step 4 from the standard Kubernetes installation for suggested values, then Next. + +1. Accept the defaults on the last pane and select Install. + + A Helm install output shell will be displayed and should indicate success when completed. + +1. To update a Coder deployment, select Coder from the Installed Apps and update as desired. ## Next steps From 735e22182c3f1d768c9f2ece731feecfc6c4a17f Mon Sep 17 00:00:00 2001 From: Edward Angert Date: Tue, 25 Feb 2025 21:58:05 -0500 Subject: [PATCH 4/8] Apply suggestions from code review --- docs/install/rancher.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/install/rancher.md b/docs/install/rancher.md index 18b134b2e0635..e44a990dbfb95 100644 --- a/docs/install/rancher.md +++ b/docs/install/rancher.md @@ -1,7 +1,7 @@ # Deploy Coder on Rancher -You can deploy Coder on Rancher using a -[Workload](https://ranchermanager.docs.rancher.com/getting-started/quick-start-guides/deploy-workloads/nodeports). +You can deploy Coder on Rancher as a +[Workload](https://ranchermanager.docs.rancher.com/getting-started/quick-start-guides/deploy-workloads/workload-ingress). ## Requirements From 5412a0ce88ebc9963bf9eac952d80c714ce4ad3f Mon Sep 17 00:00:00 2001 From: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Date: Thu, 27 Feb 2025 04:30:19 +0000 Subject: [PATCH 5/8] values.yaml step and small edits --- docs/install/rancher.md | 84 ++++++++++++++++++++++++++++++++++++++--- 1 file changed, 78 insertions(+), 6 deletions(-) diff --git a/docs/install/rancher.md b/docs/install/rancher.md index e44a990dbfb95..0f1539df3e265 100644 --- a/docs/install/rancher.md +++ b/docs/install/rancher.md @@ -61,7 +61,7 @@ You can deploy Coder on Rancher as a postgres://coder:coder@coder-db-postgresql.coder.svc.cluster.local:5432/coder?sslmode=disable ``` - You can optionally use the + Optionally, you can use the [Postgres operator](https://github.com/zalando/postgres-operator) to manage PostgreSQL deployments on your Kubernetes cluster. @@ -79,21 +79,93 @@ You can deploy Coder on Rancher as a 1. Select the target workload K8s cluster for Coder in the Rancher Manager console and access the Kubectl shell. -1. From the Cluster Manager console, go to **Apps** > **Charts** and select **Partners**. +1. From the **Cluster Manager** console, go to **Apps** > **Charts** -1. From the Chart providers, search for Coder. +1. Select **Partners** from the drop-down menu and search for `Coder`. 1. Select **Coder**, then **Install**. 1. Select the target namespace you created for Coder and select **Customize Helm options before install**, then **Next**. -1. Configure Values used by Helm that help define the Coder App. Review step 4 from the standard Kubernetes installation for suggested values, then Next. +1. Configure Values used by Helm that help define the Coder App. + + Select **Edit YAML** and enter configuration settings for your deployment. + +
Expand for an example `values.yaml` + + + + ```yaml + coder: + # You can specify any environment variables you'd like to pass to Coder + # here. Coder consumes environment variables listed in + # `coder server --help`, and these environment variables are also passed + # to the workspace provisioner (so you can consume them in your Terraform + # templates for auth keys etc.). + # + # Please keep in mind that you should not set `CODER_HTTP_ADDRESS`, + # `CODER_TLS_ENABLE`, `CODER_TLS_CERT_FILE` or `CODER_TLS_KEY_FILE` as + # they are already set by the Helm chart and will cause conflicts. + env: + - name: CODER_PG_CONNECTION_URL + valueFrom: + secretKeyRef: + # You'll need to create a secret called coder-db-url with your + # Postgres connection URL like: + # postgres://coder:password@postgres:5432/coder?sslmode=disable + name: coder-db-url + key: url + + # (Optional) For production deployments the access URL should be set. + # If you're just trying Coder, access the dashboard via the service IP. + # - name: CODER_ACCESS_URL + # value: "https://coder.example.com" + + #tls: + # secretNames: + # - my-tls-secret-name + ``` + + > You can view our + > [Helm README](https://github.com/coder/coder/blob/main/helm#readme) for + > details on the values that are available, or you can view the + > [values.yaml](https://github.com/coder/coder/blob/main/helm/coder/values.yaml) + > file directly. + + We support two release channels: mainline and stable - read the + [Releases](./releases.md) page to learn more about which best suits your team. + + - **Mainline** Coder release: + + + + ```shell + helm install coder coder-v2/coder \ + --namespace coder \ + --values values.yaml \ + --version 2.19.0 + ``` + + - **Stable** Coder release: + + + + ```shell + helm install coder coder-v2/coder \ + --namespace coder \ + --values values.yaml \ + --version 2.18.5 + ``` + +
+ + Select **Next** when you're done. -1. Accept the defaults on the last pane and select Install. +1. On the **Supply additional deployment options** screen, accept the default settings, then select **Install**. A Helm install output shell will be displayed and should indicate success when completed. -1. To update a Coder deployment, select Coder from the Installed Apps and update as desired. +In the future, if you need to update a Coder deployment, select Coder from **Installed Apps** and use the options in the **⋮** menu. ## Next steps From b9edbcb38695c5d7a10102d8e49879a2ff8500b2 Mon Sep 17 00:00:00 2001 From: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Date: Mon, 17 Mar 2025 20:36:51 +0000 Subject: [PATCH 6/8] copy edit --- docs/install/rancher.md | 188 +++++++++++++++++++--------------------- 1 file changed, 87 insertions(+), 101 deletions(-) diff --git a/docs/install/rancher.md b/docs/install/rancher.md index 0f1539df3e265..f3f78aac50af2 100644 --- a/docs/install/rancher.md +++ b/docs/install/rancher.md @@ -9,163 +9,149 @@ You can deploy Coder on Rancher as a - Helm 3.5+ installed - Workload Kubernetes cluster for Coder -## Install Coder with SUSE Rancher Manager +## Overview -1. Create a namespace for the Coder control plane. In this tutorial, we call it `coder`: +Installing Coder on Rancher involves four key steps: - ```shell - kubectl create namespace coder - ``` +1. Create a namespace for Coder +1. Set up PostgreSQL +1. Create a database connection secret +1. Install the Coder application via Rancher UI -1. Create a PostgreSQL instance: +## Create a namespace -
+Create a namespace for the Coder control plane. In this tutorial, we call it `coder`: - Coder does not manage a database server for you. This is required for storing - data about your Coder deployment and resources. +```shell +kubectl create namespace coder +``` - ### Managed PostgreSQL (recommended) +## Set up PostgreSQL - If you're in a public cloud such as - [Google Cloud](https://cloud.google.com/sql/docs/postgres/), - [AWS](https://aws.amazon.com/rds/postgresql/), - [Azure](https://docs.microsoft.com/en-us/azure/postgresql/), or - [DigitalOcean](https://www.digitalocean.com/products/managed-databases-postgresql), - you can use the managed PostgreSQL offerings they provide. Make sure that the - PostgreSQL service is running and accessible from your cluster. It should be in - the same network, same project, etc. +Coder requires a PostgreSQL database to store deployment data. +We recommend that you use a managed PostgreSQL service, but you can use an in-cluster PostgreSQL service for non-production deployments: - ### In-Cluster PostgreSQL (for proof of concepts) +
- You can install Postgres manually on your cluster using the - [Bitnami PostgreSQL Helm chart](https://github.com/bitnami/charts/tree/master/bitnami/postgresql#readme). - There are some [helpful guides](https://phoenixnap.com/kb/postgresql-kubernetes) - on the internet that explain sensible configurations for this chart. +### Managed PostgreSQL (Recommended) - Here's one example: +For production deployments, we recommend using a managed PostgreSQL service: - ```console - # Install PostgreSQL - helm repo add bitnami https://charts.bitnami.com/bitnami - helm install coder-db bitnami/postgresql \ - --namespace coder \ - --set auth.username=coder \ - --set auth.password=coder \ - --set auth.database=coder \ - --set persistence.size=10Gi - ``` +- [Google Cloud SQL](https://cloud.google.com/sql/docs/postgres/) +- [AWS RDS for PostgreSQL](https://aws.amazon.com/rds/postgresql/) +- [Azure Database for PostgreSQL](https://docs.microsoft.com/en-us/azure/postgresql/) +- [DigitalOcean Managed PostgreSQL](https://www.digitalocean.com/products/managed-databases-postgresql) - The cluster-internal DB URL for the above database is: +Ensure that your PostgreSQL service: - ```shell - postgres://coder:coder@coder-db-postgresql.coder.svc.cluster.local:5432/coder?sslmode=disable - ``` +- Is running and accessible from your cluster +- Is in the same network/project as your cluster +- Has proper credentials and a database created for Coder - Optionally, you can use the - [Postgres operator](https://github.com/zalando/postgres-operator) to manage - PostgreSQL deployments on your Kubernetes cluster. +### In-Cluster PostgreSQL (Development/PoC) -
+For proof-of-concept deployments, you can use Bitnami Helm chart to install PostgreSQL in your Kubernetes cluster: -1. Create the PostgreSQL secret. +```console +helm repo add bitnami https://charts.bitnami.com/bitnami +helm install coder-db bitnami/postgresql \ + --namespace coder \ + --set auth.username=coder \ + --set auth.password=coder \ + --set auth.database=coder \ + --set persistence.size=10Gi +``` - Create a secret with the PostgreSQL database URL string. In the case of the - self-managed PostgreSQL, the address will be: +After installation, the cluster-internal database URL will be: - ```shell - kubectl create secret generic coder-db-url -n coder \ - --from-literal=url="postgres://coder:coder@coder-db-postgresql.coder.svc.cluster.local:5432/coder?sslmode=disable" - ``` +```text +postgres://coder:coder@coder-db-postgresql.coder.svc.cluster.local:5432/coder?sslmode=disable +``` + +For more advanced PostgreSQL management, consider using the +[Postgres operator](https://github.com/zalando/postgres-operator). + +
+ +## Create the database connection secret -1. Select the target workload K8s cluster for Coder in the Rancher Manager console and access the Kubectl shell. +Create a Kubernetes secret with your PostgreSQL connection URL: -1. From the **Cluster Manager** console, go to **Apps** > **Charts** +```shell +kubectl create secret generic coder-db-url -n coder \ + --from-literal=url="postgres://coder:coder@coder-db-postgresql.coder.svc.cluster.local:5432/coder?sslmode=disable" +``` -1. Select **Partners** from the drop-down menu and search for `Coder`. +> [!Important] +> If you're using a managed PostgreSQL service, replace the connection URL with your specific database credentials. -1. Select **Coder**, then **Install**. +## Install Coder through the Rancher UI -1. Select the target namespace you created for Coder and select **Customize Helm options before install**, then **Next**. +1. In the Rancher Manager console, select your target Kubernetes cluster for Coder. -1. Configure Values used by Helm that help define the Coder App. +1. Navigate to **Apps** > **Charts** - Select **Edit YAML** and enter configuration settings for your deployment. +1. From the dropdown menu, select **Partners** and search for `Coder` -
Expand for an example `values.yaml` +1. Select **Coder**, then **Install** - +1. Select the `coder` namespace you created earlier and check **Customize Helm options before install**. + + Select **Next** + +1. On the configuration screen, select **Edit YAML** and enter your Coder configuration settings: + +
+ Example values.yaml configuration ```yaml coder: - # You can specify any environment variables you'd like to pass to Coder - # here. Coder consumes environment variables listed in - # `coder server --help`, and these environment variables are also passed - # to the workspace provisioner (so you can consume them in your Terraform - # templates for auth keys etc.). - # - # Please keep in mind that you should not set `CODER_HTTP_ADDRESS`, - # `CODER_TLS_ENABLE`, `CODER_TLS_CERT_FILE` or `CODER_TLS_KEY_FILE` as - # they are already set by the Helm chart and will cause conflicts. + # Environment variables for Coder env: - name: CODER_PG_CONNECTION_URL valueFrom: secretKeyRef: - # You'll need to create a secret called coder-db-url with your - # Postgres connection URL like: - # postgres://coder:password@postgres:5432/coder?sslmode=disable name: coder-db-url key: url - # (Optional) For production deployments the access URL should be set. - # If you're just trying Coder, access the dashboard via the service IP. + # For production, uncomment and set your access URL # - name: CODER_ACCESS_URL # value: "https://coder.example.com" + # For TLS configuration (uncomment if needed) #tls: # secretNames: # - my-tls-secret-name ``` - > You can view our - > [Helm README](https://github.com/coder/coder/blob/main/helm#readme) for - > details on the values that are available, or you can view the - > [values.yaml](https://github.com/coder/coder/blob/main/helm/coder/values.yaml) - > file directly. + For available configuration options, refer to the [Helm chart documentation](https://github.com/coder/coder/blob/main/helm#readme) + or [values.yaml file](https://github.com/coder/coder/blob/main/helm/coder/values.yaml). - We support two release channels: mainline and stable - read the - [Releases](./releases.md) page to learn more about which best suits your team. - - - **Mainline** Coder release: +
- +1. Select a Coder version: - ```shell - helm install coder coder-v2/coder \ - --namespace coder \ - --values values.yaml \ - --version 2.19.0 - ``` + - **Mainline**: `2.20.x` + - **Stable**: `2.19.x` - - **Stable** Coder release: + Learn more about release channels in the [Releases documentation](./releases.md). - +1. Select **Next** when your configuration is complete. - ```shell - helm install coder coder-v2/coder \ - --namespace coder \ - --values values.yaml \ - --version 2.18.5 - ``` +1. On the **Supply additional deployment options** screen: -
+ 1. Accept the default settings + 1. Select **Install** - Select **Next** when you're done. +1. A Helm install output shell will be displayed and indicates the installation status. -1. On the **Supply additional deployment options** screen, accept the default settings, then select **Install**. +## Manage your Rancher Coder deployment - A Helm install output shell will be displayed and should indicate success when completed. +To update or manage your Coder deployment later: -In the future, if you need to update a Coder deployment, select Coder from **Installed Apps** and use the options in the **⋮** menu. +1. Navigate to **Apps** > **Installed Apps** in the Rancher UI. +1. Find and select Coder. +1. Use the options in the **⋮** menu for upgrade, rollback, or other operations. ## Next steps From e16a8798bf7a9dbd9d61510a4fb25ce3c67344da Mon Sep 17 00:00:00 2001 From: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Date: Wed, 19 Mar 2025 14:16:57 +0000 Subject: [PATCH 7/8] update icon --- docs/images/icons/rancher.svg | 34 +++++----------------------------- 1 file changed, 5 insertions(+), 29 deletions(-) diff --git a/docs/images/icons/rancher.svg b/docs/images/icons/rancher.svg index 65183e058a88c..c737e6b1dde96 100644 --- a/docs/images/icons/rancher.svg +++ b/docs/images/icons/rancher.svg @@ -1,29 +1,5 @@ - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file + + + + + From 2e8c09bb94da6dc8c63660d69494b423222f3e69 Mon Sep 17 00:00:00 2001 From: EdwardAngert <17991901+EdwardAngert@users.noreply.github.com> Date: Wed, 19 Mar 2025 18:40:09 +0000 Subject: [PATCH 8/8] add rancher screenshot --- docs/images/install/coder-rancher.png | Bin 0 -> 108052 bytes docs/install/rancher.md | 2 ++ 2 files changed, 2 insertions(+) create mode 100644 docs/images/install/coder-rancher.png diff --git a/docs/images/install/coder-rancher.png b/docs/images/install/coder-rancher.png new file mode 100644 index 0000000000000000000000000000000000000000..95471617b59aefa9f34be9648c411e99e6076095 GIT binary patch literal 108052 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 DuOXd> literal 0 HcmV?d00001 diff --git a/docs/install/rancher.md b/docs/install/rancher.md index f3f78aac50af2..5a8832e81c526 100644 --- a/docs/install/rancher.md +++ b/docs/install/rancher.md @@ -87,6 +87,8 @@ kubectl create secret generic coder-db-url -n coder \ ## Install Coder through the Rancher UI +![Coder installed on Rancher](../images/install/coder-rancher.png) + 1. In the Rancher Manager console, select your target Kubernetes cluster for Coder. 1. Navigate to **Apps** > **Charts**