kuberneteskubernetes-container

kubernetes - volume mapping via command


I need to map a volume while starting the container, I am able to do it so with yaml file.

Is there an way volume mapping can be done via command line without using yaml file? just like
-v option in docker?


Solution

  • without using yaml file

    Technically, yes: you would need a json file, as illustrated in "Create kubernetes pod with volume using kubectl run"

    See kubectl run.

    kubectl run -i --rm --tty ubuntu --overrides='
    {
      "apiVersion": "batch/v1",
      "spec": {
        "template": {
          "spec": {
            "containers": [
              {
                "name": "ubuntu",
                "image": "ubuntu:14.04",
                "args": [
                  "bash"
                ],
                "stdin": true,
                "stdinOnce": true,
                "tty": true,
                "volumeMounts": [{
                  "mountPath": "/home/store",
                  "name": "store"
                }]
              }
            ],
            "volumes": [{
              "name":"store",
              "emptyDir":{}
            }]
          }
        }
      }
    }
    '  --image=ubuntu:14.04 --restart=Never -- bash