【发布时间】:2017-07-25 12:24:05
【问题描述】:
我有多个烧瓶微服务(这显然是为了保护 IP 而被混淆的)
├── README.md
├── api_starter.py
├── app_api.py
├── service1
│ ├── __init__.py
│ ├── api.py
│ └── service1.py
├── service2
│ ├── __init__.py
│ ├── api.py
│ ├── service2.py
├── dags
│ ├── airflow_pipeline_runner.py
├── service3
│ ├── __init__.py
│ ├── api.py
│ ├── service3.py
├── service4
│ ├── __init__.py
│ ├── api.py
│ └── service4.py
├── service5
│ ├── __init__.py
│ ├── api.py
│ └── service5.py
├── service6
│ ├── __init__.py
│ ├── api.py
│ └── service6.py
├── requirements.txt
└── service7
├── __init__.py
├── api.py
└── service7.py
这些微服务中的每一个都由 api_starter 运行。这些微服务中的每一个都相互通信。码头化这个应用程序的最佳方式是什么?我是否给每个微服务一个 docker 文件,然后在目录的根目录中有一个 docker-compose.yml?这些微服务中的每一个都相互通信。任何和所有
【问题讨论】:
-
这些服务是相互导入还是通过 tcp 端口进行通信?
-
目前通过气流管道进行通信,基本上只是使用 http 请求(虽然 tcp 更好)
-
如果没有更多信息,真的很难提供帮助。是的,每个人都需要一个 Dockerfile 并公开适当的端口。或者您可以使用一个 Dockerfile,公开所有端口,然后通过
python二进制文件运行相应的服务。 -
什么样的信息有用?
-
端口号?这些服务如何工作的示例?
标签: python docker flask dockerfile microservices