如何在没有 pod 或部署的 yaml 配置的情况下创建多容器 pod

How to create multi container pod from without yaml config of pod or deployment

试图弄清楚如何在没有任何资源的 yaml 配置的情况下使用 kubectl 从终端创建多容器 pod 尝试了 kubectl run --image=redis --image=nginx 但第二个 --image 只是覆盖了第一个 .. :)

kubectl 运行 用于集群上 运行ning 1 个或多个 a container image 实例

https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands

使用 yaml 配置文件

您不能在单个 kubectl 命令中执行此操作,但您可以分两次执行此操作:使用 kubectl run 命令后跟 kubectl patch 命令:

kubectl run mypod --image redis && kubectl patch deploy mypod --patch '{"spec": {"template": {"spec": {"containers": [{"name": "patch-demo", "image": "nginx"}]}}}}'

按照以下步骤操作

创建补丁-demo.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: patch-demo
spec:
  replicas: 2
  selector:
    matchLabels:
      app: myapp
  template:
    metadata:
      labels:
        app: myapp
    spec:
      containers:
      - name: nginx
        image: nginx
----

deploy patch-demo.yaml

create patch-containers.yaml as below
---
spec:
  template:
    spec:
      containers:
      - name: redis
        image: redis
---
patch the above yaml to include redis container

kubectl patch deployment patch-demo --patch "$(cat patch-containers.yaml)"