我是Kubernetes的新手。我想知道如何在Java(或Scala)中以编程方式启动容器,并向进程的输入流提供一些二进制数据。可能我需要一个作业。我找到了如何启动作业,但无法控制其输入流。
我可以使用任何方便的Kubernetes客户端库。
我需要它启动一个kaniko容器,并将动态生成的.tar.gz
文件(通过--context tar://stdin
选项)提供给它的输入流。
我可以在现有的kaniko
容器上执行exec
,但不知道为此目的适当地启动容器,因为容器不包括任何shell。
2条答案
按热度按时间kpbwa7wx1#
您可以使用
kubectl run
创建一个pod,并使用选项-i
连接其stdin。当工作完成时,您的容器应该正常终止。示例:
参考编号:
https://jamesdefabia.github.io/docs/user-guide/kubectl/kubectl_run/
hl0ma9xz2#
使用fabric8 Java客户端库以编程方式,可以通过以下方式完成:
https://github.com/fabric8io/kubernetes-client/blob/master/doc/CHEATSHEET.md#running-a-pod
设置env.变量或添加参数非常方便。
现在我得研究一下,怎么样才能养活这个标准的输入。