Skip to content

Latest commit

 

History

History

.devcontainer

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 

Code - OSS Development Container

This repository includes configuration for a development container for working with Code - OSS in an isolated local container or using Visual Studio Codespaces.

Quick start - local

  1. Install Docker Desktop or Docker on your local machine. (See docs for additional details.)

  2. [Docker Desktop] If you are not using the new WSL2 Docker Desktop engine, increase the resources allocated to Docker Desktop to at least 4 Cores and 4 GB of RAM (8 GB recommended). Right-click on the Docker status bar item, go to Preferences/Settings > Resources > Advanced to do so.

  3. Install Visual Studio Code Stable or Insiders and the Remote - Containers extension.

    Image of Remote - Containers extension

    Note that the Remote - Containers extension requires the Visual Studio Code distribution of Code - OSS. See the FAQ for details.

  4. Press Ctrl/Cmd + Shift + P and select Remote - Containers: Open Repository in Container....

    Tip: While you can use your local source tree instead, operations like yarn install can be slow on macOS or using the Hyper-V engine on Windows. We recommend the "open repository" approach instead since it uses "named volume" rather than the local filesystem.

  5. Type https://github.com/microsoft/vscode (or a branch or PR URL) in the input box and press Enter.

  6. After the container is running, open a web browser and go to http://localhost:6080 or use a VNC Viewer to connect to localhost:5901.

Anything you start in VS Code or the integrated terminal will appear here.

Next: Try it out!

Quick start - Codespaces

Note that the Codspaces browser-based editor cannot currently access the desktop environment in this containe (due to a missing feature). We recommend using Visual Studio Code from the desktop to connect instead in the near term.

  1. Install Visual Studio Code Stable or Insiders and the Visual Studio Codespaces extension.

    Image of VS Codespaces extension

    Note that the Visual Studio Codespaces extension requires the Visual Studio Code distribution of Code - OSS.

  2. Sign in by pressing Ctrl/Cmd + Shift + P and selecting Codespaces: Sign In. You may also need to use the Codespaces: Create Plan if you do not have a plan. See the Codespaces docs for details.

  3. Press Ctrl/Cmd + Shift + P and select Codespaes: Create New Codespace.

  4. Use default settings, select a plan, and then enter the repository URL https://github.com/microsoft/vscode (or a branch or PR URL) in the input box when prompted.

  5. After the container is running, open a web browser and go to http://localhost:6080 or use a VNC Viewer to connect to localhost:5901.

  6. Anything you start in VS Code or the integrated terminal will appear here.

Try it!

This container uses the Fluxbox window manager to keep things lean. Right-click on the desktop to see menu options. It works with GNOME and GTK applications, so other tools can be installed if needed.

Note you can also set the resolution from the command line by typing set-resolution.

To start working with Code - OSS, follow these steps:

  1. In your local VS Code, open a terminal (Ctrl/Cmd + Shift + `) and type the following commands:

    yarn install
    scripts/code.sh
  2. After the build is complete, open a web browser and go to http://localhost:6080 or use a VNC Viewer to connect to localhost:5901.

  3. You should now see Code - OSS!

Next, let's try debugging.

  1. Shut down Code - OSS by clicking the box in the upper right corner of the Code - OSS window through your browser or VNC viewer.

  2. Go to your local VS Code client, and use Run / Debug view to launch the VS Code configuration. (Typically the default, so you can likely just press F5).

    Note: If launching times out, you can increase the value of timeout in the "VS Code", "Attach Main Process", "Attach Extension Host", and "Attach to Shared Process" configurations in launch.json. However, running scripts/code.sh first will set up Electron which will usually solve timeout issues.

  3. After a bit, Code - OSS will appear with the debugger attached!

Enjoy!