Thanks to visit codestin.com
Credit goes to github.com

Skip to content

feat: change docker to use "coder" user and add basic Helm chart #2746

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

Merged
merged 7 commits into from
Jul 26, 2022

Conversation

deansheather
Copy link
Member

@deansheather deansheather commented Jun 30, 2022

Adds a basic Helm chart that we can build upon. This basic Helm chart does not contain a postgres database sidecar, and I don't think we should add one as the timescale database in v1 was only for evaluation purposes, but we have better evaluation methods like the built-in postgres for coder v2.

Subtasks

Fixes #2267

@deansheather deansheather self-assigned this Jun 30, 2022
Copy link
Contributor

@f0ssel f0ssel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking great so far, glad we are keeping it simple.

protocol: TCP
- name: https
port: 443
targetPort: https
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we change the deployment port we listen on, so we can't route to 443 here.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should probably fix that and provide a second listen address for https traffic. I'll open an issue

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@deansheather deansheather changed the title feat: add basic Helm chart feat: change docker to use "coder" user and add basic Helm chart Jul 22, 2022
@deansheather deansheather marked this pull request as ready for review July 22, 2022 16:55
{{- if .Values.coder.ingress.enable }}
---
apiVersion: networking.k8s.io/v1
kind: Ingress
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to provide an ingress? Would a service be enough? I think @f0ssel had some thoughts here.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Ingress is useful for customers who don't want to expose coder directly with a LoadBalancer Service but instead want to run it through their own ingress controller like the nginx one. Turning on the ingress does not create an ingress controller for you like it did in v1 at one point, the customer needs to supply their own.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it be simpler to exclude that resource for now, as customers can really easily add their own Ingress?

My intent is to minimize the surface area and knowledge of Kubernetes that we need to have. Reducing resources that some devs may not understand can be helpful there.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds good to me, I'm down to remove it if you're fine with that in the name of simplicity

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm good with that if you feel it's not necessary, I don't have a full understanding, I'm just tryna simplify ;p

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@f0ssel you chill with me removing ingress?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ultra chill 👍

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It will be required for us to document the step of optionally creating an ingress on setup instructions since it will be a super common ask, but I'm fine with it not being a part of coder chart. This will also mean "rolling out changes" to an ingress will also be more complicated to instruct users, but I don't see that being something we really need to worry about imo.

@deansheather deansheather requested review from coadler, f0ssel and kylecarbs and removed request for coadler, kylecarbs and f0ssel July 26, 2022 16:21
Comment on lines +32 to +33
#- name: CODER_PG_CONNECTION_URL
# value: "postgres://coder:password@postgres:5432/coder?sslmode=disable"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is our recommended setup in this deployment model?

It'd be awesome if you wrote docs as part of this PR (or in a future one, but soon after this). I'm not entirely sure what happens after I helm install this. I believe it just fails due to no PostgreSQL cluster?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Made an issue about writing documentation: #3224

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

at the moment it would just fail unless you specified a postgres deployment URL like that

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Helm chart to host Coder on Kubernetes
3 participants