4.7 KiB
code-server
code-server
is VS Code running on a remote server, accessible through the browser.
Try it out:
docker run -it -p 127.0.0.1:8443:8443 -v "${PWD}:/home/coder/project" codercom/code-server --allow-http --no-auth
- Code on your Chromebook, tablet, and laptop with a consistent dev environment.
- If you have a Windows or Mac workstation, more easily develop for Linux.
- Take advantage of large cloud servers to speed up tests, compilations, downloads, and more.
- Preserve battery life when you're on the go.
- All intensive computation runs on your server.
- You're no longer running excess instances of Chrome.
Getting Started
Run over SSH
Use sshcode for a simple setup.
Docker
See docker oneliner mentioned above. Dockerfile is at /Dockerfile.
Binaries
-
Download a binary (Linux and OS X supported. Windows coming soon)
-
Start the binary with the project directory as the first argument
code-server <initial directory to open>
You will be prompted to enter the password shown in the CLI
code-server
should now be running at https://localhost:8443.code-server uses a self-signed SSL certificate that may prompt your browser to ask you some additional questions before you proceed. Please read here for more information.
For detailed instructions and troubleshooting, see the self-hosted quick start guide.
Quickstart guides for Google Cloud, AWS, and DigitalOcean.
How to secure your setup.
Build
- If you also plan on developing, set the
OUT
environment variable:export OUT=/path/to/some/directory
. Otherwise it will build in this directory which will cause issues because thenyarn watch
will try to compile the build directory as well. - For now
@coder/nbin
is a global dependency. - Run
yarn build ${codeServerVersion} ${vscodeVersion} ${target} ${arch}
in this directory (for example:yarn build development 1.35.0 linux x64
). - You can run the built code with
node path/to/build/out/vs/server/main.js
or runyarn binary
with the same arguments in the previous step to package the code into a single binary.
Development
git clone https://github.com/microsoft/vscode
cd vscode
git clone https://github.com/cdr/code-server src/vs/server
cd src/vs/server
yarn patch:apply
yarn
yarn watch
# Wait for the initial compilation to complete (it will say "Finished compilation").
yarn start
# Visit http://localhost:8443
Known Issues
- Creating custom VS Code extensions and debugging them doesn't work.
- To debug Golang using ms-vscode-go extension, you need to add
--security-opt seccomp=unconfined
to yourdocker run
arguments when launching code-server with Docker. See #725 for details.
Future
- Stay up to date! Get notified about new releases of code-server.
- Windows support.
- Electron and Chrome OS applications to bridge the gap between local<->remote.
- Run VS Code unit tests against our builds to ensure features work as expected.
Extensions
At the moment we can't use the official VSCode Marketplace. We've created a custom extension marketplace focused around open-sourced extensions. However, if you have access to the .vsix
file, you can manually install the extension.
Telemetry
Use the --disable-telemetry
flag or set DISABLE_TELEMETRY=true
to disable tracking ENTIRELY.
We use data collected to improve code-server.
Contributing
Development guides are coming soon.
License
Enterprise
Visit our enterprise page for more information about our enterprise offering.
Commercialization
If you would like to commercialize code-server, please contact contact@coder.com.