0

0

使用VSCode的Remote - Containers进行容器开发

幻影之瞳

幻影之瞳

发布时间:2025-11-04 21:00:02

|

317人浏览过

|

来源于php中文网

原创

使用 VSCode 的 Remote - Containers 扩展可在容器中开发,确保环境一致且不影响本地系统。首先安装 Docker、VSCode 及 Remote - Containers 扩展。在项目根目录创建 .devcontainer 文件夹,包含 devcontainer.json 和可选 Dockerfile。配置文件定义镜像、依赖、端口转发和扩展等。通过命令面板执行 “Reopen in Container” 启动,VSCode 自动构建镜像、挂载项目、应用设置并进入容器环境。终端与工具均运行于容器内,保证一致性。可挂载 SSH 密钥、运行初始化命令,并支持多环境配置。避免容器内持久化数据,问题可通过远程资源管理器日志排查。配置一次后,团队成员可一键复用统一环境,提升协作效率。

使用vscode的remote - containers进行容器开发

使用 VSCode 的 Remote - Containers 扩展,可以直接在隔离的容器环境中进行开发,既能保证环境一致性,又不影响本地系统。整个流程简单高效,特别适合团队协作和复杂依赖项目。

安装与准备

确保你的开发机器已安装以下工具:

  • Docker:负责运行和管理容器
  • Visual Studio Code:推荐使用最新版本
  • Remote - Containers 扩展:在 VSCode 扩展市场中搜索并安装

安装完成后,VSCode 就具备了将开发环境“搬进”容器的能力。

配置开发容器

在项目根目录下创建 .devcontainer 文件夹,并添加两个关键文件:

  • devcontainer.json:定义容器启动配置
  • Dockerfile(可选):自定义镜像构建步骤

示例 devcontainer.json 内容:

{
  "name": "My Dev Container",
  "image": "mcr.microsoft.com/vscode/devcontainers/base:ubuntu",
  "features": {
    "git": "latest"
  },
  "forwardPorts": [3000, 5000],
  "postAttachCommand": "npm install",
  "customizations": {
    "vscode": {
      "extensions": ["ms-vscode.vscode-typescript-next"],
      "settings": {
        "terminal.integrated.shell.linux": "/bin/bash"
      }
    }
  }
}

你也可以用 Dockerfile 构建专用镜像,只需把 image 替换为 dockerFile 字段指向该文件。

启动容器化开发环境

按下 F1Ctrl+Shift+P 打开命令面板,输入 “Remote-Containers: Reopen in Container”,回车执行。

带剪切动画的幻灯片
带剪切动画的幻灯片

这是一款带剪切动画的幻灯片,幻灯片切换时,会以「左」、「右」箭头为中心进行展开,适合通栏的设计。幻灯片使用了 CSS3 属性,不兼容低级浏览器。

下载

VSCode 会自动:

  • 构建或拉取指定镜像
  • 启动容器并挂载当前项目目录
  • 应用扩展、端口转发和初始化命令

连接成功后,终端和编辑器都在容器内部运行,npmpythonnode 等命令使用的都是容器内的环境。

实用技巧与注意事项

提升使用体验的一些常见做法:

  • 通过 mounts 挂载本地工具(如 SSH 密钥)
  • 使用 onCreateCommand 安装构建工具(比如 make、cmake)
  • 配合 .devcontainer/devcontainer.json 的 variants 使用多环境(如 dev、test)
  • 避免在容器内长期存储数据,所有更改应保留在挂载的项目目录中

如果容器启动失败,可通过 VSCode 的“远程资源管理器”查看日志,排查 Dockerfile 或配置问题。

基本上就这些。只要配好一次 .devcontainer,团队成员打开项目时就能一键进入统一环境,省去“在我机器上是好的”这类麻烦。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

418

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

535

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

311

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

77

2025.09.10

k8s和docker区别
k8s和docker区别

k8s和docker区别有抽象层次不同、管理范围不同、功能不同、应用程序生命周期管理不同、缩放能力不同、高可用性等等区别。本专题为大家提供k8s和docker区别相关的各种文章、以及下载和课程。

257

2023.07.24

docker进入容器的方法有哪些
docker进入容器的方法有哪些

docker进入容器的方法:1. Docker exec;2. Docker attach;3. Docker run --interactive --tty;4. Docker ps -a;5. 使用 Docker Compose。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

499

2024.04.08

docker容器无法访问外部网络怎么办
docker容器无法访问外部网络怎么办

docker 容器无法访问外部网络的原因和解决方法:配置 nat 端口映射以将容器端口映射到主机端口。根据主机兼容性选择正确的网络驱动(如 host 或 overlay)。允许容器端口通过主机的防火墙。配置容器的正确 dns 服务器。选择正确的容器网络模式。排除主机网络问题,如防火墙或连接问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

401

2024.04.08

docker镜像有什么用
docker镜像有什么用

docker 镜像是预构建的软件组件,用途广泛,包括:应用程序部署:简化部署,提高移植性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

438

2024.04.08

俄罗斯Yandex引擎入口
俄罗斯Yandex引擎入口

2026年俄罗斯Yandex搜索引擎最新入口汇总,涵盖免登录、多语言支持、无广告视频播放及本地化服务等核心功能。阅读专题下面的文章了解更多详细内容。

158

2026.01.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 8万人学习

Git 教程
Git 教程

共21课时 | 3.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号