使用bash创建一个永远运行的Docker容器



我正在尝试创建一个Pod,其中包含一个用于测试的容器,该容器使用K8s API永久运行。我有以下Pod的yaml规范,它将运行一个容器并立即退出:

apiVersion: v1
kind: Pod
metadata:
name: pod-example
spec:
containers:
- name: ubuntu
image: ubuntu:trusty
command: ["echo"]
args: ["Hello World"]

我找不到任何关于command:标签的文档,但理想情况下,我想在那里放一个while循环,永远打印数字。

如果您想每隔几秒钟打印一次Hello,可以使用:

apiVersion: v1
kind: Pod
metadata:
name: busybox2
labels:
app: busybox
spec:
containers:
- name: busybox
image: busybox
ports:
- containerPort: 80
command: ["/bin/sh", "-c", "while :; do echo 'Hello'; sleep 5 ; done"]

您可以使用kubectl logs <pod-name>查看输出

保持容器运行而不打印任何内容的另一种选择是单独使用sleep命令,例如:

command: ["/bin/sh", "-ec", "sleep 10000"]

最新更新