Skip to content

Add Helm chart to host Coder on Kubernetes #2267

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
sharkymark opened this issue Jun 11, 2022 · 12 comments · Fixed by #2746
Closed

Add Helm chart to host Coder on Kubernetes #2267

sharkymark opened this issue Jun 11, 2022 · 12 comments · Fixed by #2746
Assignees
Labels
api Area: HTTP API site Area: frontend dashboard

Comments

@sharkymark
Copy link
Contributor

sharkymark commented Jun 11, 2022

Problem

For users who want to run their Coder dashboard, and workspaces, in Kubernetes, there should be a Helm chart install that will allow users to install and upgrade their Coder deployment.

Definition of Done

The first pass will allow for a simple deployment with just a Coder dashboard, but subsequent helm charts should include HA options and the ability to run containerized workspaces in the same K8s cluster.

This is for customers wanting to host Coder entirely on Kubernetes.

# The coder/coder namespace is occupied by v1, so we should maybe change it for OSS?
helm install coder coder/coder --namespace coder
@misskniss misskniss added api Area: HTTP API site Area: frontend dashboard labels Jun 14, 2022
@kylecarbs kylecarbs changed the title Request for a Kubernetes control plane including a helm chart install like v1 Add Helm chart to host Coder on Kubernetes Jun 22, 2022
@tjcran
Copy link

tjcran commented Jun 22, 2022

@kylecarbs to add some details here on our plan

@kylecarbs
Copy link
Member

Ideally, we allow customers to provide a coder.env file that contains arbitrary environment variables that can be used for configuration. We should not map each configuration value to a key in Helm, as this adds a significant maintenance burden.

This coder.env file would allow customers to arbitrarily pass environment variables too, which seems useful. The container should ship with a PostgreSQL sidecar container, similarly to v1. It should not use the built-in PostgreSQL database, as that would not support high-availability (which is likely to be used for Kubernetes).

@thalesfsp
Copy link

Any updated on this?

@tjcran
Copy link

tjcran commented Jul 11, 2022

Any updated on this?

@thalesfsp it is in progress now. Keep a watch on this issue!

@misskniss misskniss assigned kylecarbs and tjcran and unassigned deansheather Jul 14, 2022
@misskniss
Copy link

This one is currently blocked. @tjcran can you add the items to the comments here around that?

@misskniss misskniss mentioned this issue Jul 19, 2022
20 tasks
@tjcran tjcran mentioned this issue Jul 25, 2022
25 tasks
@ammario
Copy link
Member

ammario commented Jul 26, 2022

Can we include a setup template for the Kubernetes cluster in the MVP? My thoughts are it's a day of work at most beyond the rest of the feature but makes the whole thing twice as valuable. Bare in mind that our users are looking for the Coder platform entirely on Kubernetes, not just the control plane.

@tjcran
Copy link

tjcran commented Jul 26, 2022

Can we include a setup template for the Kubernetes cluster in the MVP? My thoughts are it's a day of work at most beyond the rest of the feature but makes the whole thing twice as valuable. Bare in mind that our users are looking for the Coder platform entirely on Kubernetes, not just the control plane.

I think that's super reasonable. It won't be "HA" but I think for the <10-15 devs usecase that's just fine.

@tjcran
Copy link

tjcran commented Jul 26, 2022

Can we include a setup template for the Kubernetes cluster in the MVP? My thoughts are it's a day of work at most beyond the rest of the feature but makes the whole thing twice as valuable. Bare in mind that our users are looking for the Coder platform entirely on Kubernetes, not just the control plane.

I think that's super reasonable. It won't be "HA" but I think for the <10-15 devs usecase that's just fine.

@deansheather what are your thoughts on Ammar's suggestion above?

@ammario
Copy link
Member

ammario commented Jul 26, 2022

The definition of done in this issue includes running workspaces within the Kubernetes cluster, so I'm reopening.

@ammario ammario reopened this Jul 26, 2022
@deansheather
Copy link
Member

We currently have a template that runs workspaces as kubernetes containers. https://github.com/coder/coder/tree/main/examples/templates/kubernetes-multi-service

We should probably open a new ticket for having auto-import for a basic Kubernetes "built-in" template.

@deansheather
Copy link
Member

@ammario @tjcran ^ This should probably be split up into multiple tickets, we already have a separate ticket for HA support #3227. IMO the MVP of the helm chart (being able to deploy coder onto k8s with helm) has already been achieved.

@tjcran
Copy link

tjcran commented Jul 28, 2022

I agree with that. I'll close this one and create an issue for having auto-import for k8s "built-in"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api Area: HTTP API site Area: frontend dashboard
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants