PyCharm 2025.3 Help

关于开发容器的常见问题

创建开发容器后,您会在 Docker 中看到各种卷和属性。 它们各自有什么作用?

创建开发容器后,Docker 中会出现以下卷和属性:

  • jb_devcontainers_shared_volume :复制 IDE 后端的过程需要一定时间。 不过,该过程仅在首次创建开发容器时执行一次,所有内容都会复制到此卷中。 随后,此卷会在多个容器之间共享,我们无需重复下载过程。 如果我们使用另一个 IDE 或不同版本的 IDE 创建开发容器,我们会将其复制到同一个 Docker 卷中。 所有后端都存储在同一个卷中,便于管理。

    例如,可通过 管理后端 对话框移除不必要的后端。

  • jb-devcontainer-features-xxx :如果您在 devcontainer.json 文件中使用 features ,则所有功能都会放入此类镜像中。

    目前,需要手动删除不必要的镜像。

  • jb_devcontainer_sources_xxx :如果我们使用 git clone ,则会使用辅助容器(基于 alpine/git 镜像)将所有源代码克隆到此卷中。

创建开发容器时,如何添加更多日志信息?

将以下字符串添加到 帮助 | 诊断工具 | 调试日志设置

com.intellij.platform.ijent:all
com.intellij.clouds.docker.gateway.ijent:all

使用 -ssh git clone 创建远程开发容器时,如何确认您的 SSH 连接已成功?

运行以下命令:

docker --host <ssh> build <git-url>:<context-dir>

请查看以下示例:

docker --host ssh://jetbrains@MUNIT-234:22 build git@git.jetbrains.team/devcont/DevCont_test_cases.git:.devcontainer

为什么在创建开发容器期间会拉取 alpine/git 镜像?

我们基于体积较小的 alpine/git 镜像创建一个辅助容器,其中包含部分所需工具或库,例如 Git 或 SSH 客户端。 之所以需要它,是为了克隆代码库,因为用于创建开发容器的镜像中可能没有这些工具。

为什么不在通过 SSH 的 Docker 连接中使用 创建开发容器并挂载源代码 选项?

如果我们已在本地拥有全部源代码,则无需使用通过 SSH 运行 Docker 这类复杂且缓慢的方法。

是否可以在远程后端触发构建开发容器?

您可以使用位于远程后端上的 .json 文件,为项目构建开发容器。

有关详细信息,请参阅 为远程项目启动开发容器

为什么需要在本地安装 Docker,才能通过 SSH 远程创建开发容器?

本地 Docker 会收集正确的上下文,仅将必要的文件克隆到开发容器中,而不是整个代码库(其体积可能相当庞大)。

在当前实现中,需要本地 Docker CLI 来收集正确的上下文,并仅将必要的文件克隆到远程计算机。 您可以在 在远程服务器上使用 Docker 的先决条件 部分查看要求。

最后修改日期: 2025年 12月 2日