如何通过IntelliJ使用VMware虚拟机中的Docker及Docker Compose?
如何在IntelliJ中使用虚拟机里的Docker功能
当然可以实现!你遇到的报错CreateProcess error=2, Nie można odnaleźć określonego plik(找不到指定文件),本质是两个核心问题:一是主机上没装docker-compose客户端程序,二是IntelliJ还没配置成连接虚拟机里的Docker daemon。下面是一步步的解决办法:
1. 在主机上安装Docker客户端(无需Docker Desktop)
因为你不能启用Hyper-V,没法装完整的Docker Desktop,但我们只需要Docker CLI客户端和docker-compose工具就能和虚拟机里的Docker daemon通信:
- 如果用Windows的包管理器Chocolatey,打开管理员命令提示符运行:
choco install docker-cli docker-compose - 或者直接从Docker官网下载对应平台的二进制包:
- 下载Docker CLI的二进制文件,放到系统PATH能识别的文件夹(比如
C:\Windows\System32) - 下载docker-compose的二进制文件,同样放到PATH路径里
- 下载Docker CLI的二进制文件,放到系统PATH能识别的文件夹(比如
- 验证安装:打开命令提示符,输入
docker --version和docker-compose --version,如果能正常显示版本号,说明安装成功。
2. 配置IntelliJ连接虚拟机的Docker daemon
接下来要让IntelliJ知道该调用虚拟机里的Docker服务:
- 打开IntelliJ的设置:
File → Settings(或者按快捷键Ctrl+Alt+S) - 找到
Build, Execution, Deployment → Docker选项 - 点击左上角的
+号,选择TCP socket类型 - 在
Engine API URL里填入虚拟机的IP加上2375端口,比如你的虚拟机IP是192.168.3.10,就填:tcp://192.168.3.10:2375 - 点击
Test Connection按钮,如果弹出“Connection successful”的提示,说明配置没问题,点击Apply保存。
3. 调整Docker Compose的运行配置
最后要确保你的Compose配置指向正确的Docker服务:
- 打开IntelliJ的运行配置:
Run → Edit Configurations - 找到你的
Compose: docker-compose-utils.yml配置项 - 在
Docker下拉菜单里,选择刚才配置好的虚拟机Docker连接 - 检查
Compose file的路径是否正确,确保指向C:\Users\mith\IdeaProjects\mixer里的docker-compose-utils.yml - 保存配置后,再尝试运行Docker Compose,应该就能正常工作了。
额外注意事项
- 确保虚拟机的防火墙允许2375端口的TCP入站连接,不然主机会连不上虚拟机的Docker daemon
- 虚拟机的网络模式推荐用桥接模式,这样主机能直接访问虚拟机的IP;如果用NAT模式,需要在VMware的虚拟网络编辑器里设置端口转发,把主机的某个端口映射到虚拟机的2375端口
- 出于安全考虑,不要让虚拟机的Docker daemon绑定
0.0.0.0(允许所有IP访问),测试环境可以暂时这样用,正式环境一定要限制允许访问的IP地址
内容的提问来源于stack exchange,提问作者Mithrand1r
相关产品推荐
相关产品推荐

