[英]Kubernetes bash to POD after creation
我尝试使用命令kubectl run --generator=run-pod/v1 mypod--image=myimage:1 -it bash
创建 POD,在成功创建 pod 后,它会提示在侧容器中输入 bash 命令。
无论如何使用YML文件来实现上述命令? 我在 YML 下尝试过,但在成功创建 POD 后,它不会直接从 go 到 bash。 我不得不手动编写命令kubectl exec -it POD_NAME bash
。 但要避免对我的容器使用 exec 命令 bash。 我希望我的 YML 在创建 POD 后将我带到我的容器。 有没有办法做到这一点?
apiVersion: v1
kind: Pod
metadata:
name: mypod
namespace: mynamespcae
labels:
app: mypod
spec:
containers:
- args:
- bash
name: mypod
image: myimage:1
stdin: true
stdinOnce: true
tty: true
这是一个社区维基答案。 随意扩展它。
正如 David 已经提到的,在仅使用 YAML 语法创建 Pod 之后,不可能直接将 go 到 bash。 您必须使用正确的kubectl
命令,例如kubectl exec
才能将Shell 获取到 Running Container 。
您希望拥有不会退出的 pod 的键。 这是一个给你的例子。
apiVersion: v1
kind: Pod
metadata:
name: mypod
namespace: mynamespcae
labels:
app: mypod
spec:
containers:
- command:
- bash
- -c
- yes > /dev/null
name: mypod
image: myimage:1
命令yes
将继续 output 字符串yes
直到它被杀死。 部分> /dev/null
将确保您不会有大量的垃圾日志。 然后,您可以使用这些命令访问您的 pod。
kubectl apply -f my-pod.yaml
kubectl exec -it mypod bash
请记住在完成所有操作后移除 pod。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.