一个功能完整的 Docker 开发环境,预装了多个 JetBrains IDE 和常用开发工具。
可以通过在 .cnb.yml 编写远程开发事件流水线,并指定pipeline.docker.image 指定开发环境镜像。
# .cnb.yml
$:
vscode:
- docker:
# 可按需替换为其他镜像
image: docker.cnb.cool/xqitw.dev/dev-env:latest
services:
- vscode
- docker
# 开发环境启动后会执行的任务
stages:
- name: ls
script: ls -al
可以通过构建参数自定义各个软件的版本:
docker build \
--build-arg KELOVE_GOLAND_VSERSION="2025.2.5" \
--build-arg KELOVE_IDEA_VSERSION="2025.2.5" \
--build-arg KELOVE_PYCHARM_VSERSION="2025.2.5" \
--build-arg KELOVE_WEBSTORM_VSERSION="2025.2.5" \
--build-arg KELOVE_PYTHON_VSERSION="3.14.0" \
--build-arg KELOVE_GO_VSERSION="1.25.4" \
--build-arg KELOVE_NODE_VSERSION="v24.11.1" \
--build-arg KELOVE_NVM_VSERSION="v0.40.3" \
--build-arg KELOVE_SDKMAN_VSERSION="7.5.0" \
--build-arg KELOVE_JAVA_VSERSION="21.0.6-tem" \
-t custom-dev-env .
/ide_cnb/ - JetBrains IDE 安装目录~/.g/ - g 版本管理器配置~/.nvm/ - nvm 版本管理器配置~/.sdkman/ - SDKMAN! 版本管理器配置所有 IDE 都安装在 /ide_cnb 目录下,便于自动识别环境中支持的 IDE。
# 创建新项目
uv init my-project
cd my-project
# 安装依赖
uv add requests numpy pandas
# 安装开发依赖
uv add --dev pytest black flake8
# 运行脚本
uv run python script.py
# 激活虚拟环境
source .venv/bin/activate
# 查看已安装的包
uv pip list
# 更新包
uv uv pip install --upgrade package-name
# 运行测试
uv run pytest
# 查看可用的 Java 版本
sdk list java
# 安装新版本
sdk install java 11.0.25-tem
# 切换 Java 版本
sdk use java 17.0.13-tem
# 查看当前版本
sdk current java
# 设置默认版本
sdk default java 21.0.6-tem
# 查看可用的 Go 版本
g ls-remote
# 安装新版本
g install 1.22.0
# 切换 Go 版本
g use 1.22.0
# 查看当前版本
g ls
# 查看可用的 Node.js 版本
nvm ls-remote
# 安装新版本
nvm install v20.0.0
# 切换 Node.js 版本
nvm use v20.0.0
# 查看当前版本
nvm current
欢迎提交 Issue 和 Pull Request 来改进这个开发环境。
本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。