使用 VSCode Dev Containers 进行开发#

在开发 Flower 框架时,我们希望确保所有贡献者使用相同的开发环境来格式化代码或运行测试。为此,我们使用了 VSCode 远程容器扩展。这是什么?请阅读下面这段话:

Visual Studio Code Remote - Containers扩展可让你将Docker容器用作功能齐全的开发环境。它允许你打开容器内(或挂载到容器内)的任何文件夹,并利用 Visual Studio Code 的全部功能集。项目中的 devcontainer.json 文件会告诉 VS Code 如何访问(或创建)一个带有定义明确的工具和运行时栈的开发容器。该容器可用于运行应用程序,也可用于分离处理代码库所需的工具、库或运行时。

工作区文件从本地文件系统加载,或复制或克隆到容器中。扩展在容器内安装和运行,在容器内它们可以完全访问工具、平台和文件系统。这意味着,只需连接到不同的容器,就能无缝切换整个开发环境。

Source: Official VSCode documentation

开始#

Configuring and setting up the Dockerfile as well the configuration for the devcontainer can be a bit more involved. The good thing is you don't have to do it. Usually it should be enough to install Docker on your system and ensure its available on your command line. Additionally, install the VSCode Containers Extension.

现在你应该可以开始了。启动 VSCode 时,它会要求你在容器环境中运行,如果你确认,它会自动构建容器并使用它。要手动指示 VSCode 使用 devcontainer,可以在安装扩展后,点击 VSCode 窗口左下角的绿色区域,然后选择 "(重新)在容器中打开文件夹"选项。

在某些情况下,您的设置可能更复杂。有关这些情况,请参考以下资料: