我可以在Google Cloud Run或GKE上的Cloud Run上从另一个容器创建服务或容器吗?
我基本上想从另一个容器动态地管理我的容器/服务,并且不确定如何做
添加更多详细信息:
我的微服务之一需要创建新的隔离容器,这些容器将运行一些用户界面代码。我想对这些容器进行完整的生命周期控制,运行代码,然后根据需要销毁。
我也查看了Cloud Run API,但不确定如何通过API运行“ kubectl create ...”之类的东西吗?那是正确的方法吗?
答案 0 :(得分:1)
是的,您应该能够从Cloud Run服务中部署Cloud Run服务。
--allow-unauthenticated
部署应用,则“编辑”角色将是不够的,因为您需要GCP项目上的“所有者”角色。从那里,您有几种选择:
直接使用REST API:由于run.googleapis.com
的行为类似于Kubernetes API服务器,因此您可以直接应用Knative Services的JSON对象。 (您可以使用gcloud ... --log-http
了解如何使用REST API请求进行部署。)
使用gcloud
:您可以将容器映像与gcloud一起运送并从您的进程中调用它。
使用Google Cloud Client库:您可以使用可用于Cloud Run的客户端库(例如此Go library)来构造内存服务对象,并使用更高版本将其发送到API级别的客户端库(推荐方法)