在Docker-compose下调试Flask应用程序

时间:2018-06-20 09:34:21

标签: docker flask pycharm dockerfile

我遵循了Docker-Compose: Getting Flask up and running教程,并尝试在Pycharm中调试flask应用程序。为此,我克隆了this存储库,并完成了教程中的所有步骤(配置远程解释器)。

我猜想frontend服务(iky-gateway)无法成功创建,因为当我进入localhost:8080时,什么都没有显示。

enter image description here

控制台的日志未显示任何错误,我是否错过了未显示UI的内容?


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

enter image description here

然后它引发以下异常:

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没有按预期显示。 enter image description here

1 个答案:

答案 0 :(得分:0)

在该项目中查看组合文件,看起来您可能根本没有启动网关服务。从您的图片中可以看到您已连接到iky_backend。撰写文件显示,iky_backend对也已启动的mongo映像具有依赖性。

您已经附加到了iky_backend服务,这意味着您可能运行了docker-compose up iky_backend的等价物。由于存在依赖性,这将启动后端和mongo,但由于没有依赖性,因此将不会启动网关。

services:
  iky_backend:
    container_name: iky_backend
    build: .
    environment:
      APPLICATION_ENV: Production
    depends_on:
      - mongodb

如果要启动所有3个服务,请尝试运行docker-compose up iky_gateway。网关对后端有依赖关系,而后端对mongo有依赖关系,因此这三个都将启动,并且您将被连接到网关服务的控制台输出。

您可以使用compose查看使用docker-compose ps正在运行的内容,还可以使用docker-compose logs <service_name>访问日志。

我建议您阅读Docker Compose Documentation或查看docker-compose的help命令以查看一些有用的命令