microsoft/openvmm

Public

mirrored fromhttps://github.com/microsoft/openvmmAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
c35631162a814afd8689abdf85c888b561a399bf

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

Guide/src/dev_guide/getting_started/devcontainer.md

52lines · modecode

1# Getting started via Dev Container
2
3This page provides instructions for setting up a development environment using
4the repo provided Dev Container configuration for local development or
5development using GitHub Codespaces.
6
7The repo provides an Ubuntu `devcontainer.json` that installs Rust and the
8supported targets for the project.
9
10## Developing using a GitHub Codespace
11
12Either create a GitHub Codespace via your fork by clicking on the `Code` box, or
13visit the link [here](https://github.com/codespaces/new) and select your fork
14and branch.
15
16If you plan on using rust-analyzer or doing any sort of dev work, it's
17recommended to use an 8 core SKU or beefier.
18
19More documentation can be found at the official GitHub
20[docs](https://docs.github.com/en/codespaces).
21
22## Developing using a local dev container
23
24This will use Docker + the dev container vscode extension to launch the repo
25provided `devcontainer.json` on your local machine.
26
27Follow the install instructions outlined
28[here](https://code.visualstudio.com/docs/devcontainers/containers#_installation).
29
30From there, use the dev container extension in vscode to create a new dev
31container for the repository.
32
33It's recommended to clone the repo _inside_ the dev container using the `Dev
34Containers: Clone Repository Inside Container Volume...` command, as the
35filesystem otherwise will be very slow over the bind mount, which will make your
36builds & rust-analyzer very slow.
37
38More documentation can be found at the official vscode
39[docs](https://code.visualstudio.com/docs/devcontainers/containers).
40
41## Customizing your dev container
42
43Both GitHub codespaces and local dev containers support dotfile repos which can
44be used to run personalized install scripts like installing your favorite tools
45and shells, and copying over your dotfiles and configuration.
46
47For codespaces, see the documentation
48[here](https://docs.github.com/en/codespaces/setting-your-user-preferences/personalizing-github-codespaces-for-your-account#dotfiles).
49For dev containers, see the documentation [here](https://code.visualstudio.com/docs/devcontainers/containers#_personalizing-with-dotfile-repositories).
50
51You can use the same dotfiles repo for both, but note that codespaces has a few
52more limitations outlined in their documentation.
53