Visual Studio Code 中的容器
Visual Studio Code 中的 容器工具 扩展可以轻松地在 Visual Studio Code 中构建、管理和部署容器化应用程序,并包含代理工具。
本页概述了容器工具扩展的功能;请使用侧边菜单了解更多感兴趣的主题。如果您刚开始进行容器开发,请先尝试 Docker 教程,以了解关键的 Docker 概念。
安装
在您的计算机上 安装 Docker,并将其添加到系统路径。
在 Linux 上,您还应该 为将用于运行 VS Code 的非 root 用户帐户启用 Docker CLI。
要安装扩展,请打开“扩展”视图(⇧⌘X (Windows、Linux Ctrl+Shift+X)),搜索 container tools 以筛选结果,然后选择 Microsoft 提供的“容器工具”扩展。
编辑 Docker 文件
在编辑 Dockerfile 和 docker-compose.yml 文件时,可以通过按 ⌃Space (Windows、Linux Ctrl+Space) 来获得 IntelliSense,其中包括常用命令的自动完成和语法帮助。

此外,您可以使用“问题”面板(⇧⌘M (Windows、Linux Ctrl+Shift+M))查看 Dockerfile 和 docker-compose.yml 文件的常见错误。
容器的 Copilot 工具
容器工具包含用于在聊天中管理容器和镜像的代理工具。
- 询问有关您的容器和镜像的问题:“显示我的正在运行的容器”、“列出我的 Docker 镜像”
- 获取有关特定容器或镜像的详细信息:“我的 nginx 容器有什么问题?”

生成 Docker 文件
您可以通过打开命令面板(⇧⌘P (Windows、Linux Ctrl+Shift+P))并使用 **Containers: Add Docker Files to Workspace** 命令,将 Docker 文件添加到您的工作区。该命令将生成 Dockerfile 和 .dockerignore 文件,并将它们添加到您的工作区。该命令还会询问您是否要添加 Docker Compose 文件,但这只是可选的。
该扩展可以为大多数流行开发语言(C#、Node.js、Python、Ruby、Go 和 Java)生成 Docker 文件,并相应地自定义生成的 Docker 文件。创建这些文件时,我们还会创建必要的工件,以支持 Node.js、Python 和 .NET (C#) 的调试。
容器资源管理器
容器工具扩展为 VS Code 提供了一个容器资源管理器视图。容器资源管理器允许您检查和管理容器资产:容器、镜像、卷、网络和容器注册表。如果您已登录到您的 Microsoft 帐户并且该帐户可以访问 Azure 订阅,您也可以浏览您的 Azure 容器注册表。
右键单击菜单提供了访问每种资产类型的常用命令的途径。

您可以通过鼠标拖动来重新排列容器资源管理器的窗格,并使用上下文菜单来隐藏或显示它们。

容器命令
许多最常见的容器相关命令都内置在命令面板中。

您可以通过命令来管理 镜像、网络、卷、镜像注册表和 Docker Compose。此外,**Containers: Prune System** 命令将删除已停止的容器、悬空镜像以及未使用的网络和卷。
Docker Compose
Docker Compose 允许您使用 Docker 定义和运行多容器应用程序。容器工具扩展中的 Compose 语言服务 在编写 docker-compose.yml 文件时为您提供 IntelliSense 和选项卡自动完成。按 ⌃Space (Windows、Linux Ctrl+Space) 以查看有效 Compose 指令的列表。

当您将鼠标悬停在 Docker Compose YAML 属性上时,我们还会提供工具提示。

虽然 Compose Up 允许您一次运行所有服务,但我们的新功能 Compose Up - Select Services 允许您选择要运行的任意服务组合。

一旦您的 Compose Up 命令完成,请导航到容器资源管理器,将您的服务作为 Compose 组查看。这允许您作为组启动、停止和查看每个服务的日志。

使用镜像注册表
您可以显示内容,并从 Azure 容器注册表、Docker Hub、GitHub 等地方推送、拉取或删除镜像。

Azure 容器注册表中的镜像可以直接从 VS Code 部署到 Azure App Service 或 Azure 容器应用。请参阅 部署到 Azure 以开始。有关如何进行身份验证和使用注册表的更多信息,请参阅 使用容器注册表。
调试在容器内运行的服务
您可以调试在容器内运行的、使用 .NET (C#) 和 Node.js 构建的服务。该扩展提供了自定义任务,有助于在调试器下启动服务以及将调试器附加到正在运行的服务实例。有关更多信息,请参阅 调试容器化应用程序 和 自定义容器工具扩展。
Azure CLI 集成
您可以通过 **Container Images: Run Azure CLI** 命令在独立的、基于 Linux 的容器中启动 Azure CLI(命令行界面)。这使您可以在隔离的环境中访问完整的 Azure CLI 命令集。有关可用命令的更多信息,请参阅 Azure CLI 入门。
后续步骤
继续阅读以了解更多信息