# microsoft/vscode-remote-release

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/microsoft-vscode-remote-release).**

4,123 stars · 452 forks · Dockerfile · NOASSERTION

## Links

- GitHub: https://github.com/microsoft/vscode-remote-release
- Homepage: https://aka.ms/vscode-remote
- awesome-repositories: https://awesome-repositories.com/repository/microsoft-vscode-remote-release.md

## Topics

`containers` `dev-containers` `devcontainers` `docker` `remote` `remote-development` `ssh` `visual-studio-code` `vscode` `wsl`

## Description

This project provides a remote development extension pack and infrastructure for bootstrapping isolated toolchains and runtimes. It enables a system for opening folders and executing code across SSH hosts, Docker containers, and the Windows Subsystem for Linux.

The system utilizes a client-server split architecture to separate the user interface from the extension host and language servers. It features a secure connection layer for SSH remote editing, a bridge for WSL integration, and a remote port forwarding tool to tunnel network traffic from remote environments to a local machine.

The project covers a broad range of remote capabilities, including container lifecycle management, cloud environment provisioning, and remote code debugging. It supports environment-specific configuration through dotfile synchronization, host-specific settings, and remote extension management to ensure consistent development environments across different machines.

Security and access are managed through SSH authentication, agent key forwarding, and the synchronization of Git credentials between host and subsystem environments.

## Tags

### Development Tools & Productivity

- [Development Containers](https://awesome-repositories.com/f/development-tools-productivity/development-containers.md) — Bootstraps full development environments inside containers to ensure consistent tooling and dependencies across machines. ([source](https://cdn.jsdelivr.net/gh/microsoft/vscode-remote-release@main/README.md))
- [Remote Development Extension Packs](https://awesome-repositories.com/f/development-tools-productivity/remote-development-extension-packs.md) — Provides a comprehensive set of tools for opening folders and running code in SSH hosts, Docker containers, or WSL.
- [Remote Debugging](https://awesome-repositories.com/f/development-tools-productivity/application-debugging/remote-debugging.md) — Enables setting breakpoints and inspecting variables for applications running on remote servers. ([source](https://code.visualstudio.com/docs/remote/ssh-tutorial))
- [Container Development Environments](https://awesome-repositories.com/f/development-tools-productivity/container-development-environments.md) — Offers tooling and IDE integrations to streamline the development and debugging of applications within containers.
- [Container Environment Definitions](https://awesome-repositories.com/f/development-tools-productivity/container-development-environments/container-environment-definitions.md) — Defines the operating system, tools, environment variables, and port forwarding rules using a project-level configuration file. ([source](https://code.visualstudio.com/docs/remote/codespaces))
- [Development Container Configuration](https://awesome-repositories.com/f/development-tools-productivity/container-development-environments/development-container-configuration.md) — Uses JSON metadata to provision containers with specific tool stacks and runtimes for reproducible workspaces. ([source](https://code.visualstudio.com/docs/remote/dev-containers))
- [Containerized Development Workflows](https://awesome-repositories.com/f/development-tools-productivity/containerized-development-workflows.md) — Implements methodologies and tools for developing within isolated Docker containers to ensure consistent toolchains.
- [Remote Development Platforms](https://awesome-repositories.com/f/development-tools-productivity/development-environment-management/development-environments/cloud-remote-workspaces/remote-development-platforms.md) — Provides a platform to open folders and run tools on remote machines via SSH or tunnels. ([source](https://cdn.jsdelivr.net/gh/microsoft/vscode-remote-release@main/README.md))
- [In-Container Extension Management](https://awesome-repositories.com/f/development-tools-productivity/extension-managers/in-container-extension-management.md) — Provides management of extensions that are installed and executed directly within the remote container runtime. ([source](https://code.visualstudio.com/docs/remote/dev-containers))
- [Environment Personalization Tools](https://awesome-repositories.com/f/development-tools-productivity/developer-utilities-libraries/workflow-productivity-enhancers/developer-productivity-utilities/developer-experience/environment-interaction-utilities/environment-personalization-tools.md) — Injects personal repositories of dotfiles into hosted environments to standardize terminal and editor behavior. ([source](https://code.visualstudio.com/docs/remote/codespaces))
- [Remote Container Workspaces](https://awesome-repositories.com/f/development-tools-productivity/development-containers/remote-container-workspaces.md) — Opens folders on remote hosts inside containers, combining network tunneling with containerized execution. ([source](https://code.visualstudio.com/docs/remote/tunnels))
- [Remote Endpoint Overrides](https://awesome-repositories.com/f/development-tools-productivity/project-scaffolding-config-code-generation/project-scaffolding-configuration/build-configuration/typescript-configurations/project-settings/local-overrides/remote-endpoint-overrides.md) — Provides configuration overrides that apply specifically to a remote host or container connection. ([source](https://code.visualstudio.com/docs/remote/troubleshooting))
- [Remote Environment Configurations](https://awesome-repositories.com/f/development-tools-productivity/remote-environment-configurations.md) — Automates the setup and synchronization of environment variables and startup scripts for remote development runtimes. ([source](https://code.visualstudio.com/docs/remote/troubleshooting))
- [Remote Language Server Integration](https://awesome-repositories.com/f/development-tools-productivity/remote-language-server-integration.md) — Delivers syntax highlighting and smart completions for code residing on a remote machine. ([source](https://code.visualstudio.com/docs/remote/ssh-tutorial))
- [Remote Repository Managers](https://awesome-repositories.com/f/development-tools-productivity/remote-repository-managers.md) — Allows browsing and editing of files hosted in remote version control repositories without local downloads. ([source](https://code.visualstudio.com/docs/remote/vscode-web))
- [Dev Container Lifecycle Managers](https://awesome-repositories.com/f/development-tools-productivity/task-pipeline-managers/container-lifecycle-management/dev-container-lifecycle-managers.md) — Provides tools to start, stop, rebuild, and remove development containers directly from the editor. ([source](https://code.visualstudio.com/docs/remote/dev-containers))
- [In-Browser Code Editing](https://awesome-repositories.com/f/development-tools-productivity/terminal-syntax-highlighting-engines/in-browser-code-editing.md) — Provides the capability to browse source code and edit files directly within a web browser interface. ([source](https://code.visualstudio.com/docs/remote/vscode-web))

### Data & Databases

- [Virtual File System Layers](https://awesome-repositories.com/f/data-databases/virtual-file-system-layers.md) — Abstracts file operations across local and remote storage backends to allow seamless editing of remote files.

### DevOps & Infrastructure

- [Container Environments](https://awesome-repositories.com/f/devops-infrastructure/container-environments.md) — Provides tools for isolating software execution within containerized environments to ensure consistent toolchains and dependencies.
- [Remote Command Execution](https://awesome-repositories.com/f/devops-infrastructure/remote-command-execution.md) — Executes shell commands and extensions directly on remote servers to offload computation from the local client. ([source](https://code.visualstudio.com/docs/remote/tunnels))
- [Remote Development Provisioning](https://awesome-repositories.com/f/devops-infrastructure/cloud-provisioning/remote-development-provisioning.md) — Sets up reproducible coding environments on remote cloud infrastructure using container metadata. ([source](https://code.visualstudio.com/docs/remote/codespaces))
- [Dotfile Automation](https://awesome-repositories.com/f/devops-infrastructure/container-configuration/dotfile-automation.md) — Automatically clones and applies personal configuration files from a repository into a container to maintain a consistent shell. ([source](https://code.visualstudio.com/docs/remote/dev-containers))
- [Container Image Building](https://awesome-repositories.com/f/devops-infrastructure/container-image-building.md) — Builds container images from recipes to ensure consistent tool versions and reduce environment startup times. ([source](https://code.visualstudio.com/docs/remote/dev-containers))
- [Container Tooling Installers](https://awesome-repositories.com/f/devops-infrastructure/container-platform-add-ons/container-tooling-installers.md) — Installs self-contained CLI tools and runtimes into development containers via configuration files. ([source](https://code.visualstudio.com/docs/remote/dev-containers))
- [SSHFS Mounts](https://awesome-repositories.com/f/devops-infrastructure/remote-file-system-mounts/sshfs-mounts.md) — Attaches remote directories to the local filesystem using SSHFS for direct file editing and content transfers. ([source](https://code.visualstudio.com/docs/remote/troubleshooting))
- [Integrated Terminal Access](https://awesome-repositories.com/f/devops-infrastructure/remote-linux-workstations/integrated-terminal-access.md) — Provides an integrated bash shell to execute commands directly within a connected Linux distribution. ([source](https://code.visualstudio.com/docs/remote/wsl-tutorial))
- [Container Directory Mounting](https://awesome-repositories.com/f/devops-infrastructure/volume-mounts/host-guest-mounts/container-directory-mounting.md) — Binds host directories to container paths to enable seamless file editing within a containerized environment. ([source](https://code.visualstudio.com/docs/remote/dev-containers))

### Operating Systems & Systems Programming

- [WSL Development Environments](https://awesome-repositories.com/f/operating-systems-systems-programming/linux-environment-emulation/wsl-development-environments.md) — Provides a development environment that runs an editor and debugger within a Windows Subsystem for Linux distribution.
- [SSH Remote Development Editors](https://awesome-repositories.com/f/operating-systems-systems-programming/ssh-remote-login-controls/ssh-file-editors/ssh-remote-development-editors.md) — Enables opening and editing files on remote machines over SSH with session persistence and automatic reconnection.
- [WSL Host Bridges](https://awesome-repositories.com/f/operating-systems-systems-programming/wsl-host-bridges.md) — Bridges the Windows host and Linux subsystem to execute tools against Linux file paths within a Windows UI.
- [Filesystem Access](https://awesome-repositories.com/f/operating-systems-systems-programming/linux-environment-emulation/wsl-development-environments/filesystem-access.md) — Enables opening directories and files within a Linux distribution via the command line or GUI menu. ([source](https://code.visualstudio.com/docs/remote/wsl))

### Security & Cryptography

- [SSH Tunneling](https://awesome-repositories.com/f/security-cryptography/network-infrastructure-security/web-network-security/network-security/network-routing-access-control/ssh-tunneling.md) — Establishes secure encrypted channels via SSH to forward commands, file system requests, and network ports.
- [Secure Remote Connectivity Tools](https://awesome-repositories.com/f/security-cryptography/secure-remote-connectivity-tools.md) — Establishes secure connections to remote development machines to edit code without requiring standard SSH. ([source](https://code.visualstudio.com/docs/remote/tunnels))
- [Remote Compute Tunnels](https://awesome-repositories.com/f/security-cryptography/secure-remote-connectivity-tools/remote-compute-tunnels.md) — Establishes secure tunnels to remote machines to execute code and leverage external compute resources. ([source](https://code.visualstudio.com/docs/remote/vscode-web))
- [SSH Authentication](https://awesome-repositories.com/f/security-cryptography/ssh-authentication.md) — Establishes secure connections to remote hosts using public keys, password prompts, or two-factor authentication. ([source](https://code.visualstudio.com/docs/remote/troubleshooting))
- [SSH Agent Forwarding](https://awesome-repositories.com/f/security-cryptography/ssh-agent-forwarding.md) — Integrates with local SSH agents to store passphrases and forward keys to remote environments. ([source](https://code.visualstudio.com/docs/remote/troubleshooting))

### Software Engineering & Architecture

- [Client-Server Architecture](https://awesome-repositories.com/f/software-engineering-architecture/client-server-architecture.md) — Implements a structural pattern where a remote server manages the editor state and extension host while the local client handles the UI.
- [Remote Extension Management](https://awesome-repositories.com/f/software-engineering-architecture/remote-extension-management.md) — Executes editor extensions and language servers directly on a remote host to provide low-latency access to files and tools.
- [Environment Setup Scripts](https://awesome-repositories.com/f/software-engineering-architecture/development-methodologies/engineering-best-practices/development-process-methodologies/development-workflows/environment-setup-scripts.md) — Runs automated routines and Bourne shell scripts to initialize dependencies and modify the environment before the remote server starts. ([source](https://code.visualstudio.com/docs/remote/wsl))
- [VSIX Remote Deployment](https://awesome-repositories.com/f/software-engineering-architecture/remote-extension-management/vsix-remote-deployment.md) — Deploys local VSIX extension packages directly onto a remote machine, container, or WSL instance. ([source](https://code.visualstudio.com/docs/remote/troubleshooting))
- [Host-Specific Configuration](https://awesome-repositories.com/f/software-engineering-architecture/runtime-configuration-overrides/layer-based-configuration-overrides/configuration-sets/host-specific-configuration.md) — Defines settings that apply exclusively to a specific remote host, overriding general user preferences. ([source](https://code.visualstudio.com/docs/remote/ssh))

### Part of an Awesome List

- [Cloud Development Environments](https://awesome-repositories.com/f/awesome-lists/devtools/cloud-development-environments.md) — Creates and manages hosted development environments in the cloud that spin up on demand. ([source](https://code.visualstudio.com/docs/remote/remote-overview))

### Networking & Communication

- [Network Port Forwarding](https://awesome-repositories.com/f/networking-communication/network-port-forwarding.md) — Creates tunnels between remote ports and local ports to access remote services via localhost. ([source](https://code.visualstudio.com/docs/remote/ssh-tutorial))
- [Remote Port Forwarding](https://awesome-repositories.com/f/networking-communication/port-forwarding-tools/remote-port-forwarding.md) — Maps ports on a remote server back to a local port to tunnel traffic for accessing remote services via localhost.
- [Host-to-Instance Port Forwardings](https://awesome-repositories.com/f/networking-communication/service-port-forwarding/host-to-instance-port-forwardings.md) — Exposes services or servers running inside a container to the host machine via port forwarding. ([source](https://code.visualstudio.com/docs/remote/dev-containers))
