// meta-unit-core/.devcontainer/devcontainer.json { // 显示在 IDE 中的 Dev Container 名称 "name": "Meta Unit Core Development Environment", // 指向你的 docker-compose.yml 文件 // 因为 devcontainer.json 和 docker-compose.yml 都在 .devcontainer 目录下,所以直接引用文件名 "dockerComposeFile": "docker-compose.yml", // 指定 docker-compose.yml 中哪个服务是你的主要开发容器。 // 在我们之前的规划中,这个服务的名称是 'meta-unit-dev' "service": "meta-unit-dev", // 指定容器内部你的项目代码的挂载路径。 // 这与 docker-compose.yml 中 volumes: - .:/app 的容器端路径一致。 "workspaceFolder": "/app", // 容器创建后,打开工作区之前或之后运行的命令。 // 适合进行首次的依赖更新或检查,确保环境就绪。 "postCreateCommand": "cargo update && cargo check", // 可选:端口转发配置。如果你的项目内部有服务需要暴露到宿主机,在这里添加。 // 例如,如果你在测试中启动一个模拟服务,或者未来有本地调试接口。 // "forwardPorts": [8080], // 可选:如果你在 Dockerfile 中创建了非 root 用户 (例如 'developer'),可以在此指定。 // "remoteUser": "developer", // 可选:针对特定 IDE 的定制。 // 虽然这里主要是为 VS Code 设计,但包含一些通用设置对未来切换或参考也有帮助。 // JetBrains IDEs 会忽略 VS Code 相关的设置,但会利用 dockerComposeFile 和 service 等核心配置。 "customizations": { "vscode": { "settings": { // Rust-specific settings for VS Code "rust-analyzer.checkOnSave.command": "clippy", // 建议使用 clippy 进行保存时检查 "editor.formatOnSave": true, // 保存时自动格式化 "rust-analyzer.diagnostics.enable": true, "rust-analyzer.linkedProjects": [ // 告诉 rust-analyzer 你的 Cargo.toml 在哪里 "./Cargo.toml" ], "rust-analyzer.cargo.buildScripts.enable": true, // 如果 build.rs 很重要 "rust-analyzer.completion.callable.snippets": "fill_arguments" // 填充函数参数 }, "extensions": [ // VS Code 推荐的 Rust 扩展 "rust-lang.rust-analyzer", "vadimcn.vscode-lldb", // Rust 调试器 "tamasfe.even-better-toml", // TOML 文件增强 "serayuzgur.crates", // Cargo.toml 依赖管理辅助 "swellaby.vscode-rust-test-explorer" // Rust 测试探索 ] } } }