Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 在Kubernetes的吊舱中从另一个容器启动一个容器_Docker_Kubernetes - Fatal编程技术网

Docker 在Kubernetes的吊舱中从另一个容器启动一个容器

Docker 在Kubernetes的吊舱中从另一个容器启动一个容器,docker,kubernetes,Docker,Kubernetes,我有一个容器,它对一些数据执行一些操作。这个容器内存和CPU资源都很重,我希望它只能按需启动 例如,在Kubernetes的docker compose中,我是这样使用它的: docker-compose run heavycontainer perform.sh some-action 容器执行操作并结束 在Kubernetes中,我希望此容器执行它提供的操作,但响应某些消息(由其他容器创建的AMQP消息)。我有一个监听消息的容器。我首先想到的是一个有两个容器的吊舱:听众和表演者。但我不知道

我有一个容器,它对一些数据执行一些操作。这个容器内存和CPU资源都很重,我希望它只能按需启动

例如,在Kubernetes的docker compose中,我是这样使用它的:

docker-compose run heavycontainer perform.sh some-action
容器执行操作并结束

在Kubernetes中,我希望此容器执行它提供的操作,但响应某些消息(由其他容器创建的AMQP消息)。我有一个监听消息的容器。我首先想到的是一个有两个容器的吊舱:听众和表演者。但我不知道是否有可能从另一个容器启动一个容器

Init或sidecar容器似乎不是解决方案。我更喜欢避免创建自定义图像来将侦听器注入到执行者中

有什么办法可以做到这一点吗?

我希望它能帮助你

  • pod需要定期运行

  • pod需要按需运行

首先,我为我的错误回答向你道歉

我知道你现在想要什么,我认为它可以在同一个吊舱中运行多个容器。这对你很有帮助


注:OpenShift是Enterprise Kubernetes,因此您可以认为OpenShift与Kubernetes是相同的。

您可以根据队列中相关消息的数量,使用水平Pod自动缩放()来编排heavycontainer。

有趣的阅读,谢谢。但这是我尝试或想要避免的三种情况:init和sidecar容器无法控制pod中的其他容器,第三种情况是关于构建自定义映像。提供的链接没有提到基于水平缩放的“队列中的消息”。你能提供更多的细节吗?除非您的意思是只支持基于CPU的beta api。@ucipass,我的意思是基于自定义指标的HPA,请参见示例:“K8s水平Pod Autoscaler:作为一个控制循环实现,它通过Metrics.K8s.io API(如CPU/内存)定期查询资源度量API以获取核心度量,以及针对特定于应用程序的度量(external.Metrics.K8s.io或Custom.Metrics.K8s.io API)的自定义度量API。”