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

Skip to content

Feat: one-line script (or Docker-based) install #1167

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
Tracked by #1101
bpmct opened this issue Apr 25, 2022 · 15 comments
Closed
Tracked by #1101

Feat: one-line script (or Docker-based) install #1167

bpmct opened this issue Apr 25, 2022 · 15 comments

Comments

@bpmct
Copy link
Member

bpmct commented Apr 25, 2022

What is your suggestion?

Coder v2 has a one-line, or Docker-based installation method, similar to that in code-server:

Why do you want this feature?

This makes Coder subjectively easier to try. This is part of the open source switch criteria, as defined by @ammario.

Are there any workarounds to get this functionality today?

Yes, installing a binary or package from releases

Are you interested in submitting a PR for this?

I can contribute, but probably not own, a Dockerfile or install script for Coder v2.

@kylecarbs
Copy link
Member

I think we can pretty much copy/paste the code-server one actually 👀👀👀

@sharkymark
Copy link
Contributor

I like this suggestion @bpmct

@bpmct
Copy link
Member Author

bpmct commented Apr 25, 2022

somewhat related: #1178 (working on Docker image)

I think we can pretty much copy/paste the code-server one actually 👀👀👀

This will be kinda hard to test until the repo is public, sadly. But totally agree!

@misskniss
Copy link

Hey team! Please add your planning poker estimate with ZenHub @jsjoeio @bpmct

@kylecarbs
Copy link
Member

I started on this in an installscript branch!

@misskniss
Copy link

This is a good candidate for a new hire. This ticket will need to be better groomed to that effect though. @jsjoeio @bpmct FYI. It would be good to have your inputs on scoping and grooming this.
@kylecarbs has the branch mentioned above as well. Will the three of you touch base and see if you can get the technical description and @tjcran help with the AC?

@misskniss misskniss assigned spikecurtis and unassigned jsjoeio and bpmct May 10, 2022
@jsjoeio
Copy link
Contributor

jsjoeio commented May 10, 2022

Sure! Ben already linked to the code-server install script which should help with this. It's well-written and has comments.

Other resources

This is the "public API" aka how we tell folks to use our install script in code-server: https://github.com/coder/code-server#getting-started. I imagine we'll want something similar here.

We also have some basic tests here for our install script, which would be nice to have in coder as well.

@misskniss
Copy link

Please add your planning poker estimate with ZenHub @spikecurtis

@misskniss
Copy link

Please add your planning poker estimate with ZenHub @kylecarbs

@spikecurtis
Copy link
Contributor

The goal of this needs to be scoped. The "why" says that we want to make coder easier to try. But, just installing the coder binary on a system is actually one of the least painful steps in actually trying out Coder v2.

It would be possible to build a Docker image, that when run privileged and with the Docker socket mounted, could have a fully functional coder instance including preloading a local-Docker based template. So, there is just one docker run command (or, possibly a Docker compose file if we want to run a for-real Postgres). Then, you can point your browser to the web UI and immediately create a generic VS Code-based workspace.

Is that the kind of thing we want with this ticket, or do we just want this ticket to track a script that gets a machine such that you can type coder at the command line and hit our binary?

@tjcran
Copy link

tjcran commented May 11, 2022

@bpmct what's your take on @spikecurtis's scoping question? I have some ideas, but as the author of the issue, you should clarify your intent first :)

@bpmct
Copy link
Member Author

bpmct commented May 11, 2022

My thoughts are

  1. A script does not have to be a switch criteria, Docker (feat: build & release cross-platform Docker images #1178) will do. Absolutely agree with @spikecurtis here
  2. Installing a binary or package is simple, but most OSS projects still document how to do this in the README or have a script. Simply put, it's a best practice.
  3. By launch (Community MVP), we should have instructions for downloading the package from releases and adding to path, and optionally a script. It is difficult to do now because the repo is closed and all artifacts are gated.

Would appreciate some help on the Docker PR I have open. From there, we can provide sample run commands and compose files.

@tjcran what do you think?

@bpmct
Copy link
Member Author

bpmct commented May 11, 2022

Basically this issue was not well-defined and can probably be closed once #1177 is merged and we have docs on using Docker + docker-compose + socket.

From there, we can open another issue to highlight more specific install instructions in the README, such as a script or 3 commands to download from GH releases

@tjcran
Copy link

tjcran commented May 11, 2022

Basically this issue was not well-defined and can probably be closed once #1177 is merged and we have docs on using Docker + docker-compose + socket.

From there, we can open another issue to highlight more specific install instructions in the README, such as a script or 3 commands to download from GH releases

I'm good with that! @spikecurtis any objections to me closing this in favor of #1177?

@spikecurtis
Copy link
Contributor

No objection!

@tjcran tjcran closed this as completed May 12, 2022
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

No branches or pull requests

7 participants