相关环境
- PyCharm 2023.1.4
- Docker Desktop 4.21.1.0
PyCharm直接运行Dockerfile时报错,我能确定的时Dockerfile文件没有写错,使用命令构建是没有问题的,PyCharm直接运行却不行,百度找了一圈啥也没有,最后在不懈的折腾下总算解决了。
废话不多上代码。
错误代码:
Failed to deploy ‘ Dockerfile: Dockerfile’: Cannot invoke “java.util.Map.entrySet()” because the return value of “com.github.dockerjava.core.DockerConfigFile.getAuths()” is null
问题原因:
由于docker的config.json认证地址为空导致的,在最新版的桌面docker客户端出现这个问题。
问题文件路径:
C:\Users\xxx\.docker\config.json
{
"auths": null,
"credsStore": "desktop",
"plugins": {
"-x-cli-hints": {
"enabled": "true"
}
}
}
解决办法:
两种解决方案
- 第一种、删掉"auths": null
{
"credsStore": "desktop",
"plugins": {
"-x-cli-hints": {
"enabled": "true"
}
}
}
- 第二种、手动添加授权地址(我是删掉config.json后再通过docker登录命令让他生成一个新的配置文件)
{
"auths": {
"https://index.docker.io/v1/": {}
},
"credsStore": "wincred",
"plugins": {
"-x-cli-hints": {
"enabled": "true"
}
}
}
保存后再去PyCharm运行Dockerfile文件就成功啦!