microsoft / microsoft/vscode-remote-release

OS specific dev containers

Open
#2,067 25 comments 13 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

containers feature-request
Dominant language
Dockerfile
Stars
4.2k
Forks
470
Avg merge
1d 1h
Merged PRs (30d)
1

Description

One of the value propositions of dev containers is that teams that use mixed operating systems can all benefit from a consistent toolchain regardless of host OS. However, in some cases, there may be development containers that will only ever work on a specific operating system. (See https://github.com/microsoft/vscode-dev-containers/pull/169.)

This feature request tracks the idea of being dev containers being able to declare where they are expected to work.

For example, one possible way this could work is that devcontainer.json could have a property that declared the host OS platforms it supported (macos, windows, linux). Not specifying any platform could mean that it works with any for backwards compatibility.

To use a property like this we could set things up so that, if a devcontainer.json in the vscode-dev-containers repo has a value for property, any lists in VS Code include / exclude it based on the host OS VS Code is running on. Similarly, in the case of an "open folder in container..." scenario with an existing repository with a devcontainer.json in it, we could at least warn that the dev container is not intended for use on the current host OS if it is not in the list.

//cc: @chrmarti

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with how devcontainer.json is handled in repository lists and the “open folder in container...” flow, then examine how VS Code identifies the host OS. Done means an optional platform declaration preserves compatibility when absent, filters lists by host OS, and warns when an existing repository is not intended for the current OS.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, vscode
Domain
devtools
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.