这个问题我不懂。看它闲置了两天,我刚好在测试 ChatGPT,就问了一下。它的回答如下:
这个错误的原因是在创建容器时没有指定命令,因此 Docker API 返回了 400 错误。在您的配置文件中,container-cmd 已经设置为 ["R", "-e", "shiny::runApp('/root/euler')"],因此似乎不应该出现这个问题。
不过,根据您的描述,这个问题可能是由于 Docker API 没有正确地将您的 container-cmd 设置传递给容器。为了解决这个问题,您可以尝试在 Dockerfile 中设置 CMD 指令,并将其设置为与 container-cmd 相同的值,例如:
cssCopy codeFROM <base_image>
EXPOSE 3838
CMD ["R", "-e", "shiny::runApp('/root/euler')"]
请确保在构建 Docker 镜像时使用此 Dockerfile,然后在应用程序配置文件中将 container-image 设置为该镜像的名称或 ID。重新启动 ShinyProxy 并尝试再次启动应用程序,看看问题是否已解决。
另外,请确保您的 Docker API 已正确配置。如果您在本地运行 Docker,可以尝试使用以下命令来测试 Docker API 是否正在运行:
bashCopy code
curl http://localhost:2375/info
如果 Docker API 已正确运行,您应该能够看到一些有关 Docker 守护程序的信息。如果看到错误消息,请检查 Docker API 的配置并尝试重新启动 Docker 守护程序。
请楼主和各位大佬看看是不是靠谱。