Visual Studio Code 中的 Docker

Docker 扩展使得在 Visual Studio Code 中构建、管理和部署容器化应用程序变得容易。

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

安装

Install Docker 在您的机器上并添加到系统路径中。

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

要安装扩展,请打开扩展视图(⇧⌘X (Windows, Linux Ctrl+Shift+X)),搜索docker以过滤结果,并选择由Microsoft开发的Docker扩展。

选择Docker扩展

编辑Docker文件

你可以通过点击⌃Space (Windows, Linux Ctrl+Space)来获取IntelliSense,当编辑你的Dockerfiledocker-compose.yml文件时,提供常见命令的补全和语法帮助。

Dockerfiles 的 IntelliSense

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

生成Docker文件

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

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

Docker 资源管理器

Docker扩展为VS Code提供了一个Docker Explorer视图。Docker Explorer允许您检查和管理Docker资源:容器、镜像、卷、网络和容器注册表。如果您登录了您的Microsoft账户并且该账户有权访问Azure订阅,您还可以浏览您的Azure容器注册表。

右键菜单提供了对每种类型资产的常用命令的访问。

Docker Explorer 上下文菜单

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

自定义Docker资源管理器

Docker 命令

许多最常见的 Docker 命令都直接内置在命令面板中:

Docker命令

您可以运行Docker命令来管理imagesnetworksvolumesimage registriesDocker Compose。此外,Docker: Prune System命令将删除已停止的容器、悬空的镜像以及未使用的网络和卷。

Docker Compose

Docker Compose 允许您使用 Docker 定义和运行多容器应用程序。我们的 Compose Language Service 在 Docker 扩展中为您提供了编写 docker-compose.yml 文件时的 IntelliSense 和标签补全功能。按下 ⌃Space (Windows, Linux Ctrl+Space) 以查看有效的 Compose 指令列表。

Docker Compose IntelliSense

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

Docker Compose 工具提示

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

Docker Compose Up - 选择子集

一旦你的Compose Up命令完成,导航到Docker Explorer以将你的服务视为一个Compose组。这允许你作为一个组来启动、停止和查看每个服务的日志。

Docker Compose 组

使用镜像注册表

你可以从Azure Container RegistryDocker HubGitHub等地方显示内容并推送、拉取或删除镜像:

Azure 容器注册表内容

Azure 容器注册表中的镜像可以直接从 VS Code 部署到 Azure App Service 或 Azure 容器应用。请参阅 部署到 Azure 开始操作。有关如何验证和使用注册表的更多信息,请参阅 使用容器注册表

调试在容器内运行的服务

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

Azure CLI 集成

您可以使用Docker Images: Run Azure CLI命令在独立的、基于Linux的容器中启动Azure CLI(命令行界面)。这使您可以在隔离的环境中访问完整的Azure CLI命令集。有关可用命令的更多信息,请参阅Get started with Azure CLI

下一步

继续阅读以了解更多信息