使用 bash 创建一个永远运行的 Docker 容器
Creating a Docker container that runs forever using bash
我正在尝试创建一个带有容器的 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"]
我正在尝试创建一个带有容器的 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"]