簡體   English   中英

Kubernetes bash 創建后到POD

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM