我有一个对某些数据执行某些操作的容器。该容器占用大量内存和 CPU 资源,我希望它仅按需启动。
举个例子,对于 Kubernetes 中的 docker-compose,我这样使用它:
docker-compose run heavycontainer perform.sh some-action
容器执行操作并结束。
在 Kubernetes 中,我希望此容器执行它提供的操作,但响应某些消息(AMQP 消息,由其他容器创建)。我有一个监听消息的容器。我的第一个想法是一个带有两个容器的 Pod:监听器和执行者。但我不知道是否可以从另一个容器启动一个容器。
Init 或 sidecar 容器似乎不是解决方案。而且我更喜欢避免创建自定义图像来将监听器注入(inject)到表演者中。
有什么办法可以实现这一点吗?
最佳答案
<罢工> 希望对您有帮助。
- <罢工>
pod 需要
run regularly
, CronJob
pod 需要 run on demand
, Job 罢工>
首先,我为我的错误回答向您表示歉意。
我现在明白你想要什么,并且我认为可以在同一个 Pod 中运行多个容器。 Patterns for Application Augmentation on OpenShift对你有帮助。
PS。 OpenShift 是 Enterprise Kubernetes,因此您可以认为 OpenShift 与 Kubernetes 是一样的。关于docker - 从 Kubernetes 的 pod 中的另一个容器启动一个容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51858191/