如何停止在 Cloud Foundry 中重新创建服务
How to stop re-creating a service inside cloud foundry
CF 新手。我的应用程序中有多个服务,其中一个特定服务只能在第一次创建(而不是每次都创建)。
我正在使用以下代码:
cf service service-name || cf create-service service-name
但是,当我部署应用程序时,它仍然每次都在创建服务。有没有更好的方法?
你应该只 运行 cf create-service
一次。每次你 运行 它,它都会创建一个新的服务实例。
您想 cf bind-service
或使用 manifest.yml
将您的服务绑定到您的应用程序。如果您将要绑定的服务名称放在 manifest.yml
中,它将自动发生。否则,您需要在必要时手动 运行 cf bind-service
,这实际上只在您最初推送或更改服务实例后执行一次。
你的命令,好像还可以。 cf service
should return 1 如果它没有找到你指定的服务名称,这应该触发命令的第二部分来创建服务。同时,cf create-service
如果你试图创建一个已经存在的名称的服务肯定会失败。它会说 The service instance name is taken: foo
。因此,如果您看到 运行ning 该命令正在重新创建服务实例,则可能是某些东西之前删除了它。也许查看您拥有的任何部署代码,并检查是否有东西意外删除了该服务实例。通常,您 不想 删除服务实例,除非您真的、真的用完了它。一般情况下,解绑一个服务即可。
CF 新手。我的应用程序中有多个服务,其中一个特定服务只能在第一次创建(而不是每次都创建)。
我正在使用以下代码:
cf service service-name || cf create-service service-name
但是,当我部署应用程序时,它仍然每次都在创建服务。有没有更好的方法?
你应该只 运行 cf create-service
一次。每次你 运行 它,它都会创建一个新的服务实例。
您想 cf bind-service
或使用 manifest.yml
将您的服务绑定到您的应用程序。如果您将要绑定的服务名称放在 manifest.yml
中,它将自动发生。否则,您需要在必要时手动 运行 cf bind-service
,这实际上只在您最初推送或更改服务实例后执行一次。
你的命令,好像还可以。 cf service
should return 1 如果它没有找到你指定的服务名称,这应该触发命令的第二部分来创建服务。同时,cf create-service
如果你试图创建一个已经存在的名称的服务肯定会失败。它会说 The service instance name is taken: foo
。因此,如果您看到 运行ning 该命令正在重新创建服务实例,则可能是某些东西之前删除了它。也许查看您拥有的任何部署代码,并检查是否有东西意外删除了该服务实例。通常,您 不想 删除服务实例,除非您真的、真的用完了它。一般情况下,解绑一个服务即可。