我有一套Docker容器的应用/服务系统,使用docker-compose启动时,它们通过桥接网络相互通信。
工作者启动并向管理器注册。管理器为工作者分配工作。要做到这一点,工作者需要知道管理器在哪里,而管理器需要知道工作者在哪里。
我想将它们全部部署到Google Cloud Run。
目前,在Docker中,它们通过容器名称相互通信。例如,工作者可能会调用:
使用Google Cloud Run如何运作?据我所见,当您创建与容器链接的服务时,一旦它启动,您就会得到一个永久的URL来与您的应用程序通信。容器中的应用程序不知道URL是什么。
我能否像Docker桥接网络那样使用服务名称进行相互通信?
工作者启动并向管理器注册。管理器为工作者分配工作。要做到这一点,工作者需要知道管理器在哪里,而管理器需要知道工作者在哪里。
我想将它们全部部署到Google Cloud Run。
目前,在Docker中,它们通过容器名称相互通信。例如,工作者可能会调用:
http://manager:5000/register?name=worker1&port=5000
来注册启动,然后管理器可以调用http://worker1:5000
发送工作。所有这些都归功于它们连接到同一个桥接网络。使用Google Cloud Run如何运作?据我所见,当您创建与容器链接的服务时,一旦它启动,您就会得到一个永久的URL来与您的应用程序通信。容器中的应用程序不知道URL是什么。
我能否像Docker桥接网络那样使用服务名称进行相互通信?