现已推出!阅读 10 月份的新功能和修复。

Visual Studio Code 中的 Docker

Docker 扩展使您能够轻松地在 Visual Studio Code 中构建、管理和部署容器化应用程序。

此页面概述了 Docker 扩展的功能;使用侧边菜单了解您感兴趣的主题。如果您刚开始使用 Docker 开发,请先尝试 Docker 教程,以了解关键的 Docker 概念。

安装

在您的计算机上 安装 Docker,并将其添加到系统路径。

在 Linux 上,您还应 为将用于运行 VS Code 的非 root 用户帐户启用 Docker CLI

要安装扩展,请打开扩展视图 (⇧⌘X (Windows、Linux Ctrl+Shift+X)),搜索 docker 以筛选结果,然后选择由 Microsoft 创作的 Docker 扩展。

Select Docker extension

编辑 Docker 文件

您可以在编辑 Dockerfiledocker-compose.yml 文件时,通过单击 ⌃Space (Windows、Linux Ctrl+Space) 获得 IntelliSense,并获得常见命令的补全和语法帮助。

IntelliSense for Dockerfiles

此外,您可以使用问题面板 (⇧⌘M (Windows、Linux Ctrl+Shift+M)) 查看 Dockerfiledocker-compose.yml 文件的常见错误。

生成 Docker 文件

您可以通过打开命令面板 (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 并使用 Docker: 将 Docker 文件添加到工作区 命令,将 Docker 文件添加到您的工作区。该命令将生成 Dockerfile.dockerignore 文件,并将它们添加到您的工作区。该命令还会询问您是否要添加 Docker Compose 文件,但这可选。

该扩展可以为大多数流行的开发语言(C#、Node.js、Python、Ruby、Go 和 Java)搭建 Docker 文件,并相应地自定义生成的 Docker 文件。在创建这些文件时,我们还会创建必要的工件,以提供对 Node.js、Python 和 .NET (C#) 的调试支持。

Docker 资源管理器

Docker 扩展为 VS Code 贡献了一个 Docker 资源管理器视图。Docker 资源管理器使您能够检查和管理 Docker 资源:容器、镜像、卷、网络和容器注册表。如果您登录到您的 Microsoft 帐户,并且该帐户可以访问 Azure 订阅,那么您也可以浏览您的 Azure 容器注册表。

右键单击菜单提供对每种资源类型常用的命令的访问权限。

Docker Explorer context menu

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

Customize Docker Explorer

Docker 命令

许多最常见的 Docker 命令已直接内置到命令面板中

Docker commands

您可以运行 Docker 命令来管理 镜像网络镜像注册表Docker Compose。此外,Docker: 修剪系统 命令将删除已停止的容器、悬挂的镜像以及未使用的网络和卷。

Docker Compose

Docker Compose 允许您使用 Docker 定义和运行多容器应用程序。我们的 Compose 语言服务 在 Docker 扩展中为您提供了在编写 docker-compose.yml 文件时的 IntelliSense 和选项卡补全。按 ⌃Space (Windows、Linux Ctrl+Space) 以查看有效的 Compose 指令列表。

Docker Compose IntelliSense

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

Docker Compose Tooltips

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

Docker Compose Up - Select Subset

Compose Up 命令完成后,请导航到 Docker 资源管理器,以将您的服务查看为 Compose 组。这使您能够以组的形式启动、停止和查看每个服务的日志。

Docker Compose Groups

使用镜像注册表

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

Azure Container Registry content

Azure 容器注册表中的镜像可以直接从 VS Code 部署到 Azure 应用服务或 Azure 容器应用。请参阅 部署到 Azure 以开始使用。有关如何向注册表进行身份验证以及如何使用注册表的更多信息,请参阅 使用容器注册表

调试在容器内运行的服务

您可以调试使用 .NET (C#) 和 Node.js 构建并在容器内运行的服务。该扩展提供自定义任务,这些任务有助于在调试器下启动服务,以及将调试器附加到正在运行的服务实例。有关更多信息,请参阅 调试容器化应用程序自定义 Docker 扩展

Azure CLI 集成

您可以使用 **Docker 镜像:运行 Azure CLI** 命令在独立的基于 Linux 的容器中启动 Azure CLI(命令行界面)。这使您能够在隔离的环境中访问完整的 Azure CLI 命令集。有关可用命令的更多信息,请参见 Azure CLI 入门

后续步骤

继续阅读以了解有关以下内容的更多信息