go20/day01/devcontainer
yumaojun03 8b10207790 ```
feat(devcontainer): 改用本地Dockerfile构建开发环境

- 将devcontainer.json配置从使用基础镜像和Features改为使用本地Dockerfile构建
- 更新README.md文档,说明已改为基于官方golang:1.25-bookworm镜像的本地构建方式
- 修改备注部分,指示用户在Dockerfile中添加额外工具而非在devcontainer.json中配置
```
2025-12-28 18:33:35 +08:00
..
```
2025-12-28 18:33:35 +08:00
```
2025-12-28 18:00:50 +08:00
```
2025-12-28 18:00:50 +08:00
```
2025-12-28 18:33:35 +08:00

使用 Dev Container 开发 demo 工程

此目录下的 demo/ 是一个 Go 工程。已提供 VS Code Dev Container 配置,支持在容器内进行开发与调试。

快速开始

  • 前置:本地安装 VS Code 与 Dev Containers 扩展Microsoft 提供)。
  • 打开文件夹:在 VS Code 中打开 day01/devcontainer 目录。
  • 重新在容器中打开:命令面板运行 “Dev Containers: Reopen in Container”。
  • 首次启动会执行依赖下载:postCreateCommand 会在 demo/ 下执行 go mod download
  • 已改为本地 Dockerfile 构建:基于官方 golang:1.25-bookworm,避免 MCR/GHCR 拉取受限。

容器内开发

  • 代码位置:/workspaces/<当前打开的文件夹>/demo
  • 常用操作:
    • 运行:在容器终端进入 demo/ 目录后执行 go run main.go
    • 构建:go build
    • 测试:go test ./...
  • 已安装Go 工具链与 VS Code Go 扩展;保存时自动格式化与常用 lint 设置。

调试

  • 已自动安装 Delvedlv)。
  • VS Code 已提供调试配置:day01/devcontainer/.vscode/launch.json
    • 直接在 “Run and Debug” 视图选择 “Debug demo/main.go” 或 “Debug demo tests”。
    • 断点与变量查看可在容器内正常使用。

备注

  • 如需额外工具(如 golangci-lint 的安装或 dlv 调试器),可在 .devcontainer/DockerfilepostCreateCommand 中添加。

devcontainer demo 工程

针对简单场景: 直接用 git bash 做完 vscode的命令工具 来使用