intellij docker 集成无法打开端口
intellij docker integration cant open ports
docker 集成有一个奇怪的专有配置格式,它非常不可预测且非常令人沮丧。
这是我想要 运行 我的容器的命令:
docker run -p 9999:9999 mycontainer
几乎是最简单的命令。我可以使用此命令启动我的容器并查看在 kitmatic 中打开的端口并从主机访问它。
我尝试通过单击 CLI 在 docker 运行 配置中执行此操作,并生成了一个 json 设置文件(这已经很奇怪且令人费解了)
它给了我这个 json:
{
"AttachStdin" : true,
"Tty" : true,
"OpenStdin" : true,
"Image" : "",
"Volumes" : { },
"ExposedPorts" : { },
"HostConfig" : {
"Binds" : [ ],
"PortBindings" : {
"9999/tcp" : [ {
"HostIp" : "",
"HostPort" : "9999"
} ]
}
},
"_comment" : ""
}
然后我执行 运行 配置,根据 intellij,端口是打开的(查看 docker 选项卡的端口绑定部分)。但它不开放。它无法从主机访问,kitmatic 也没有显示它已打开。
如何使它作为 运行 配置工作?我如何查看 docker 命令 intellij 实际上是 运行ning?也许它只是以编程方式使用 API。
intellij docker 集成似乎要求您在 docker 文件中使用 EXPOSE 显式声明开放端口。
docker 集成有一个奇怪的专有配置格式,它非常不可预测且非常令人沮丧。
这是我想要 运行 我的容器的命令:
docker run -p 9999:9999 mycontainer
几乎是最简单的命令。我可以使用此命令启动我的容器并查看在 kitmatic 中打开的端口并从主机访问它。
我尝试通过单击 CLI 在 docker 运行 配置中执行此操作,并生成了一个 json 设置文件(这已经很奇怪且令人费解了)
它给了我这个 json:
{
"AttachStdin" : true,
"Tty" : true,
"OpenStdin" : true,
"Image" : "",
"Volumes" : { },
"ExposedPorts" : { },
"HostConfig" : {
"Binds" : [ ],
"PortBindings" : {
"9999/tcp" : [ {
"HostIp" : "",
"HostPort" : "9999"
} ]
}
},
"_comment" : ""
}
然后我执行 运行 配置,根据 intellij,端口是打开的(查看 docker 选项卡的端口绑定部分)。但它不开放。它无法从主机访问,kitmatic 也没有显示它已打开。
如何使它作为 运行 配置工作?我如何查看 docker 命令 intellij 实际上是 运行ning?也许它只是以编程方式使用 API。
intellij docker 集成似乎要求您在 docker 文件中使用 EXPOSE 显式声明开放端口。