You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VSCode的DevContainer下拉菜单中稳定添加自定义容器(无需分叉并维护插件)

规范稳定地添加自定义DevContainer到VS Code下拉菜单

你遇到的这个痛点太真实了——把自定义容器塞进插件版本目录里确实是权宜之计,插件一更新就直接失效,完全不长久。下面给你两种不用碰插件目录、也不用维护插件分叉的规范方案,既能满足需求还很稳定:

方法1:项目级自定义容器(最常用)

如果只是特定项目需要用这个自定义容器,直接在项目根目录创建.devcontainer文件夹就行,完全不用动全局配置:

  • 在项目根目录新建.devcontainer文件夹,里面创建devcontainer.json配置文件,示例内容如下:
{
  "name": "C++ Kurs 自定义容器",
  "build": {
    "dockerfile": "Dockerfile"
  },
  // 按需添加你的自定义配置,比如要预装的扩展、环境变量等
  "extensions": ["ms-vscode.cpptools", "ms-vscode.cmake-tools"],
  "remoteUser": "vscode"
}
  • 把你自定义的Dockerfile放到同一个.devcontainer目录下,写好你的环境依赖、工具安装逻辑。
  • 配置完成后,打开命令面板(Ctrl+Shift+P / Cmd+Shift+P),执行Dev Containers: Reopen in Container,VS Code就会基于你的配置构建并启动容器了。

方法2:全局模板下拉菜单(和官方预设并列)

如果想让这个自定义容器出现在全局的"新建容器"下拉列表里,和官方的C++等预设容器排在一起,用VS Code的用户全局模板目录就可以:

  1. 找到你的VS Code用户全局模板目录,不同系统路径如下:
    • Windows:%APPDATA%\Code\User\globalStorage\ms-vscode-remote.remote-containers\templates
    • macOS:~/Library/Application Support/Code/User/globalStorage/ms-vscode-remote.remote-containers/templates
    • Linux:~/.config/Code/User/globalStorage/ms-vscode-remote.remote-containers/templates
  2. 在这个目录下新建一个文件夹(比如cpp_kurs_custom),把你的.devcontainer里的所有文件(devcontainer.json、Dockerfile等)放进去,还要额外创建一个template.json文件来定义模板的显示信息,示例:
{
  "id": "cpp-kurs-custom-template",
  "name": "C++ Kurs 自定义容器",
  "description": "为C++ Kurs项目定制的开发容器",
  "tags": ["C++", "Kurs", "自定义"]
}
  1. 重启VS Code后,打开命令面板执行Dev Containers: New Container...,就能在下拉列表里看到你的自定义模板了——这个目录属于用户数据区,插件更新完全不会影响它,非常稳定。

额外小技巧:继承官方模板简化配置

如果你的自定义容器是基于官方C++模板修改的,可以用extends字段直接继承官方配置,不用重复写基础环境:

{
  "name": "C++ Kurs 自定义容器",
  "extends": "mcr.microsoft.com/devcontainers/cpp:0-ubuntu-22.04",
  // 只需要写你的自定义部分,比如额外安装的工具
  "features": {
    "ghcr.io/devcontainers/features/python:1": {},
    "ghcr.io/devcontainers/features/git:1": {}
  }
}

内容的提问来源于stack exchange,提问作者jago

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 11:27:50