# Idea-dev-container **Repository Path**: zhReimu/idea-dev-container ## Basic Information - **Project Name**: Idea-dev-container - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-06-22 - **Last Updated**: 2025-06-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 测试 idea 的 devContainer 功能 ## 踩坑记录 大致上都是网络环境的问题 ### 找不到 docker 可执行文件路径 `com.intellij.execution.process.ProcessNotCreatedException: Cannot run program "docker.exe":CreateProcess error=2,系统找不到指定的文件。` #### 原因 idea 的 docker 插件依赖 docker-cli 工具 #### 解决方案 去 [官网](https://download.docker.com/win/static/stable/x86_64/) 下载一个, 丢环境变量 `PATH` 里, idea 会自动识别 ### 构建带 `build` 的 `devContainer.json` 报错 `unknown shorthand flag: 'f' in -f` idea 构建 Dockerfile 需要用到 docker 的 `buildx` 插件, 注意: 文件名是 `docker-buildx.exe` [github-release](https://github.com/docker/buildx/releases) 安装路径 | OS | Binary name | Destination folder | |---------|---------------------|-------------------------------------| | Linux | `docker-buildx` | `$HOME/.docker/cli-plugins` | | macOS | `docker-buildx` | `$HOME/.docker/cli-plugins` | | Windows | `docker-buildx.exe` | `%USERPROFILE%\.docker\cli-plugins` | ### 构建 docker-compose.yml 时报错 `unknown shorthand flag: 'f' in -f` 问题同上, 这次是 `docker-compose` 插件, 放到同样的插件目录就行, 注意: 文件名是 `docker-compose.exe` [github-release](https://github.com/docker/compose/releases) ### 更换 `.docker` 路径 设置环境变量 `DOCKER_CONFIG`, 默认是当前用户目录下的 `.docker` 目录 ### 一直卡在 `正在计算后端…` #### 原因 idea 默认会开启一个叫 `自动选择后端版本` 的功能, 在启动 devContainer 时自动选择一个 jb 家的 ide 的 server, 从官网下载到容器中, 但因为中所周知的原因, 国内网络不是很好, 所以就会导致一直卡在这里, 找不到下载链接 #### 解决方案 去 `设置` -> `高级设置` -> `Dev Container` 取消 `自动选择后端版本`双击 shift, 输入 `registry` 进 idea 的注册表, 找到 `devcontainers.use.separate.project.panel` 勾选上, 重启 idea 做了上边这一步后就会开启从本地上传 ide 的功能, 不走 idea 官网 [idea 社区版 linux 下载直链 (ideaIC-2025.1.2.tar.gz)](https://download.jetbrains.com/idea/ideaIC-2025.1.2.tar.gz) [idea 专业版 linux 下载直链 (ideaIU-2025.1.2.tar.gz)](https://download.jetbrains.com/idea/ideaIU-2025.1.2.tar.gz) #### Failed to get an IJent binary for Linux X86_64 安装/启用一个插件 `Remote Execution Agent`, 这个插件在最新版的 idea 里是内置的, 如果出现这个问题基本就是把插件禁用了, 启用一下就好 ## 注意 - 远程版本 idea 需要用正常的 `glibc`, 也就是你的 devContainer 不能是 `alpine` 这种 `musl libc` 的发行版 - 创建 devContainer 时最好选择 `克隆模式`, 选择 `挂载模式` 的话, 需要开启 wsl 的 `automount`, 这将会把宿主机上所有磁盘挂载进 wsl, 我一般是不用这个功能的 ## 其它 [dev-container 规范](https://containers.dev/implementors/json_reference/)