作为一个AI开发人员,会通过Docker来部署本地环境,移植性更好。这个过程中免不了要编写Dockerfile或Compose文件,如果你也采用VS Code浏览器,可以通过Docker扩展来提高生产力。
Docker VS Code 扩展是由微软开发的,现在Docker官方在原有 Docker VS Code 扩展的基础上,集成了 Docker DX(Developer Experience)相关能力,进一步丰富了功能。
Docker DX 扩展的核心是 Docker Language Server,基于LSP(Language Server Protocol)构建。其相当于一个前端,通过 Docker CLI 和 Docker Engine (比如本地安装Docker Desktop)通信,由 Docker Engine 完成具体的功能。
Docker DX 扩展提供了五个核心功能:
- • Dockerfile 编辑特性,提供编写 Dockerfile 的最佳实践,由 BuildKit 和 Buildx构建引擎支持。
- • Dockerfile Debug特性,由Buildx支持
- • Compose 可视化,能非常轻松的解构 Compose 文件
1:前三个功能,分别由 Build Checks、Docker Scout提供支持,这两个实际上封装了 BuildKit 和 Buildx(粗略如此理解)。
编写 Dockerfile 文件的时候,VS Code 会提供最佳实践,如下图:
一开始并没有成功,主要是需要连接 Docker Hub API、Scout 部分云端服务。
而使用 Docker Hub API 的需要登录 Docker 账户,且邮箱必须校验过。
注意:
具体见下图的操作:
2:Compose 可视化
这个功能挺酷的,Compose 文件结构还是很复杂的,可视化功能可以快速导航复杂的 Compose 文件。
在下面这个例子中,就是单独运行 redis 容器:
Docker Language Server 是通用的服务,说明也可以在其它IDE中使用上述功能。
按照Docker官方的说法,Docker DX 扩展的功能完全复制到了 Docker 扩展,但实际上微软已经废弃了该扩展,转而支持更统一的 Container Tools 扩展,这个以后聊。