在Docker compose下调试flask应用程序

在Docker compose下调试flask应用程序,docker,flask,pycharm,dockerfile,Docker,Flask,Pycharm,Dockerfile,我遵循教程,并尝试在Pycharm中调试一个flask应用程序。为此,我克隆了存储库,并完成了教程(配置远程解释器)中的所有步骤 我猜frontend服务(iky网关)创建不成功,因为当我转到localhost:8080时,没有显示任何内容 控制台的日志没有显示任何错误,我是否遗漏了UI未显示的内容 如果我将frontend设置为主Docker compose服务: 然后抛出以下异常: Cannot start service iky_gateway: b'OCI runtime crea

我遵循教程,并尝试在
Pycharm
中调试一个flask应用程序。为此,我克隆了存储库,并完成了教程(配置远程解释器)中的所有步骤

我猜
frontend
服务(
iky网关
)创建不成功,因为当我转到
localhost:8080
时,没有显示任何内容

控制台的日志没有显示任何错误,我是否遗漏了UI未显示的内容


如果我将
frontend
设置为主Docker compose服务:

然后抛出以下异常:

Cannot start service iky_gateway: b'OCI runtime create failed: container_linux.go:348: starting container process caused "exec: \\"\\": executable file not found in

编辑:即使单击UI按钮,我在控制台中也得到了响应(状态代码:200),但UI未按预期显示。

查看该项目中的撰写文件,您可能根本没有启动网关服务。我可以从你的照片上看到你被连接到iky_后端。compose文件显示iky_后端依赖于也已启动的mongo映像

由于您已连接到iky_后端服务,这意味着您可能运行了相当于docker compose up iky_后端的
。这将启动后端和mongo,因为存在依赖项,但不会启动网关,因为不存在依赖项

services:
  iky_backend:
    container_name: iky_backend
    build: .
    environment:
      APPLICATION_ENV: Production
    depends_on:
      - mongodb
如果要启动所有3项服务,请尝试运行
docker compose up iky_gateway
。网关依赖于后端,后端依赖于mongo,因此所有3个都将启动,您将连接到网关服务的控制台输出

您可以使用compose查看使用
docker compose ps运行的内容,也可以使用
docker compose logs
访问日志


我建议您阅读或查看docker compose的帮助命令,以查看一些有用的命令

谢谢您的解释@Tim。实际上,我的问题是如何在Pycharm中同时运行所有3个服务(在Pycharm解释器中附加3个服务)。我对docker compose没有问题。当我运行docker compose up时,一切正常。@Amir compose文件中的哪个服务当前设置为在Pycharm配置中运行?看起来您已将其设置为运行后端,因此网关将永远不会启动。如果您将服务更改为运行网关服务,则所有3个服务都应在PycharmAfter中运行。如果将服务从后端更改为网关,则会引发异常。请看我的问题的编辑版本