我的flask应用程序没有在docker上运行,目前我正在从IDE上运行它。它有4个文件名为app.py(https://pastebin.pl/view/e9590e45),main.py(https://pastebin.pl/view/5896caaf),esp32_simulator.py(https://pastebin.pl/view/c5428a6d)和SensorData.py(https://pastebin.pl/view/440b69f4)。我的cassandra运行在与其他东西不同的网络上的docker上。我有一个kafka-stack-docker-compose(我从confluentinc/kafka-images中提取),它有两个名为kafka 1的容器,zoo 1在名为kafka-stack-docker-compose的堆栈中运行。我需要以某种方式添加我的python flask应用程序以在docker上运行,然后我需要以某种方式使这3个(flask,cassandra,Kafka)连接并一起工作,这样我就可以与我的主管共享这个docker容器,让他在自己的计算机上运行它。
我试着建立一个新的网络并在同一个网络上运行,但我目前在cassandra(表等)和Kafka(密钥空间)上都有太多的数据,所以我不敢删除它们并再次配置它们。
1条答案
按热度按时间ix0qys7i1#
如何将我的Flask应用对接
Docker blog似乎自己就涵盖了这一点。
我需要以某种方式使这3个(flask,cassandra,Kafka)连接并一起工作
您可以在一个Compose文件中执行此操作,因此默认情况下是在一个网络中。
我建议参考Docker Compose文档,了解容器如何联网。然后配置Kafka has specific environment variables,但Cassandra应该与任何其他外部服务一样工作。
与我的主管共享此Docker容器,以便他在自己的计算机上运行它。
你可以将你的Docker镜像推送到DockerHub,或者你公司的私有Docker Registry(如果有的话)。否则,您需要共享您的源代码,Dockerfile和docker-compose文件,然后要求您的主管也安装Docker...在我看来,在其他地方运行你的Flask应用程序会更容易,比如Google Cloud Run,然后提供一个可访问的HTTP URL并隐藏后端服务。