Essentially, we run nightly builds at OpenVSCode Server making it as upstream to VS Code as possible. In contrast to other forks the whole scope of the project is to add a minimal set of changes (specifics about what we added https://github.com/gitpod-io/openvscode-server/blob/main/doc...)
The architecture we use powers both Gitpod and GitHub Codespaces. Several of the devs and organisations that have asked for our implementation & now have adopted OpenVSCode Server referenced the following issue at Code-Server (https://github.com/cdr/code-server/issues/3835).
- with docker, how would you install eg. node and go binaries?
- with docker, how would you set up some dotfiles?
- how do you map remote ports to your local machine?
I ended up going with VSCode Remote (SSH), and am loving it. But I still think I'd be happier with a pure browser experience.
If you want to run a web app through a domain with SSL then it's trivial to setup a nginx proxy container.
It takes minutes to spin up a new dev environment with everything setup out of the box including environment variables and access tokens.
I didn't want to clog up my server with a development toolchain, so I first tried VSCode Remote (Docker). It's what I would prefer, yet I never found managing a development environment in Docker comfortable. My dev machine bootstrap is scripted, but trying out new software and mapping ports on a whim don't lend themselves well.
Currently I am using VSCode Remote (SSH) running in a virtual machine. This keeps the development environment separate from the server, and any random tools I need to install are still there after any restart.
The VM was just Ubuntu Server with sshd. VSCode Remote (SSH) is great. Installing the extension on a client machine sets up the server on the machine you connect to. Ports can be mapped from the server right in VSCode (it can even automatically detect them and mapped them for you). Terminals work as expected, mouse emulation works.
> How is this different to Gitpod?
> If you want one-click, fully automated developer environments that give yourself and your team an unparalleled productivity boost try Gitpod.
> If you have a machine somewhere which you would like to access with VS Code through a browser, check out OpenVSCode Server.
Gitpod is all about provisioning and orchestrating ephemeral developer environments (think about it as a resource efficient and powerful orchestration platform for your dev envs).An IDE is just one building block of a working cloud based developer environment, in addition to the operating system, databases, compilers and all the other tools you need to be productive. At Gitpod we want to support the IDE or editor you like best, and providing VS Code through the web browser is just one possibility. Alternatively, you can access your Gitpod workspaces through SSH, local VS Code and soon your favorite Jetbrains IDEs.
If you have a machine somewhere which you would like to access with VS Code through a browser, check out OpenVSCode Server. If you need control over your infrastructure and would like the orchestration capabilities that Gitpod offer you can self host Gitpod.