在 Visual Studio Code Dev Containers 中进行 Go 项目开发
什么是开发者容器?
顾名思义,开发者容器是用于开发使用的容器。对于开发者环境,过去我们一直遵循的步骤是,在当前的操作系统安装相关的环境及配置。以 Go 语言来说,我们需要开发 Go 语言项目,必须包含以下几个步骤。
- 安装 Go 软件包
- 配置系统环境变量
- 安装 VS Code 或其它支持 Go 的IDE
如果项目依赖像 Redis、Zookeeper 等中间件,可能是在本地或企业局域网部署相关的环境。如果项目升级,我们需要升级本地的 Go 版本、Redis、Zookeeper 等环境。每个人的本地环境可能还存在差异性。如:Go 版本不同、系统架构不同(Windows、Macos)。这种模式不能统一一致的开发者开发环境。
容器时代,我们可以将应用构建为一个镜像,在不同的机器上基于统一的镜像启动不同的容器实例,这些不同实例的运行环境完全相同。
基于容器的该特性,我们是否可以将开发环境搬运到容器之中?在项目中通过标准化的配置提交到代码仓库,每个拉取到代码的同学基于这份配置直接启动同样环境的容器,在自己的本地容器环境中进行开发?这就是开发者容器。
VSCode 在很早之前就已经具备了该功能。可以基于开发者容器构建统一的开发者容器环境,整个开发的环境配置完全运行在开发者容器之中。开发的体验和本机传统的开发模式几乎完全相同,当前机器可以完全不需要安装 Go 环境。
如何让当前项目支持开发者容器?
首先,我们必须先安装 Docker Desktop:
https://docs.docker.com/get-started/workshop/
其次,我们需要安装 VSCode Dev Containers 扩展插件:
添加完成后,会在当前项目根目录生成一个
.devcontainer/devcontainer.json 配置文件,该文件描述了开发者容器的环境信息。
如何基于开发者容器进行开发?
如上图,你可以在创建开发者容器配置文件后,根据提示“在容器中重新打开”,你也可以使用以下方式打开。
关于 devcontainer.json 配置文件的更多功能,请参阅:
https://containers.dev/implementors/json_reference/
开发者容器官方文档:
https://code.visualstudio.com/docs/devcontainers/containers
相关文章
- 微软为Windows 11带来新安全功能,提升系统防护!
- 微软专家示警:个人PC最大安全隐患在于日常使用管理员账户
- 外媒:微软将安全工作与员工绩效考核紧密联系
- 微软承认Win10/Win11家庭安全功能导致Chrome等浏览器崩溃
- 微软Azure云计算服务第四财季收入增长放缓
- 微软Azure AI落地印度Yotta云平台,加速本土AI发展
- 微软Azure再下一城:娱乐软件零售巨头GameStop
- 微软发布Azure Orbary,与亚马逊竞争卫星的云端接入
- 微软上线Azure H200 v5系列AI虚拟机:吞吐量提升35%
- 微软预览主权私有云服务Azure Local和Microsoft 365 Local