用 VS Code 连接运行中的容器

未匹配的标注

VS Code 能够帮你创建并启动容器,不过这样的操作方式可能和你的工作流并不匹配。你可能更偏向于用 VS Code 去连接一个已经在运行的 Docker 容器 —— 不管它是如何启动的。连接上容器以后,你就可以像使用 devcontainer.json 一样,在容器的文件夹中,安装插件,编辑项目文件和调试代码了。

连接 Docker 容器

连接容器的方式有2种:

1、Command Palette 中选择命令 Remote-Containers: Attach to Running Container

2、通过 Activity Bar 中的 Remote Explorer ,在 Containers 视图中,找到你想要连接的容器。点击容器右边的 Attach to Container 按钮。

注意:使用 Alpine Linux 容器的时候,一些插件可能因为插件中,基于 glibc 的原生依赖,会无法工作。

连上容器之后,默认是不打开项目的。可以点击 Activity Bar 的 Explorer 按钮( 快捷键是:ctrl + shift + e),然后点击 Open Folder 按钮,输入工作路径后,点击 OK 来打开容器内部的文件夹。

连接容器的配置文件

VS Code 支持镜像或容器的名称级配置,在重复连接指定 Docker 容器的时候,加快设置的速度。连接上容器后,只要你打开文件夹,安装插件,或是转发端口,针对本地镜像的配置文件就会自动更新,来记住你的设置,以便在下次连接时,所有东西都和关闭时一样。

1、默认情况下,会使用镜像级配置。在连接容器后,要查看或更新配置的话,可以从 Command Palette 选择 Remote-Containers: Open Container Configuration File 选项来实现。

2、如果你更偏向于把配置文件和容器名关联起来,可以在连上容器后,在 Command Palette 中,选择 Remote-Containers: Open Named Configuration File 。此后所做的任何更新都会应用到这个名称级配置,而不是镜像级配置。

这2个文件都支持 devcontainer.json 属性的子集:

属性的完整列表和用法请参考官方的《连接容器配置参考》一文。

配置文件保存以后,首次打开同一个镜像或容器名的时候,这些属性就会被用来配置环境。

小贴士:如果配置有错误,也可以通过在 Command Palette 中,选择 Remote-Containers: Open Attached Container Configuration File 来编辑配置。然后从弹出的列表中,选择镜像或容器名。

最后,如果你有一些插件,无论连接容器与否,都要安装,可以更新 settings.json 文件,来指定总是安装的插件。

VS Code 还支持连接 Kubernetes 集群中的容器,不过因为我对 Kubernetes 并不了解,以免误人子弟,就不在这里展开了。

如果觉得文章对你有用,欢迎点赞、评论,同时关注我的账号。我们下一期不见不散。

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
秦晓武
讨论数量: 0
发起讨论 只看当前版本


暂无话题~