Kubernetes(K8s) kubectl cp 常用命令

Kubernetes(K8s)中使用Kubectl 命令行工具管理 Kubernetes 集群。 kubectl 在 $HOME/.kube 目录中查找一个名为 config 的配置文件。 可以通过设置 KUBECONFIG 环境变量或设置 --kubeconfig 参数来指定其它 kubeconfig 文件。本文主要介绍Kubernetes(K8s)中kubectl cp 常用命令。

1、Kubectl语法

kubectl cp <file-spec-src> <file-spec-dest> [options]

kubectl cp:用于pod和外部的文件交换,将文件和目录复制到容器或从容器复制到容器。

-c, --container='':容器名称。如果省略,将选择荚中的第一个容器

--no-preserve=false:复制的文件/目录的所有权和权限将不会保留在容器中

2、kubectl命令中的简写

kubectl命令中可以使用的缩写,具体如下:

certificatesigningrequests (缩写 csr)
componentstatuses (缩写 cs)
configmaps (缩写 cm)
customresourcedefinition (缩写 crd)
daemonsets (缩写 ds)
deployments (缩写 deploy)
endpoints (缩写 ep)
events (缩写 ev)
horizontalpodautoattachrs (缩写 hpa)
ingresses (缩写 ing)
limitranges (缩写 limits)
namespaces (缩写 ns)
networkpolicies (缩写 netpol)
nodes (缩写 no)
persistentvolumeclaims (缩写 pvc)
persistentvolumes (缩写 pv)
poddisruptionbudgets (缩写 pdb)
pods (缩写 po)
podsecuritypolicies (缩写 psp)
replicasets (缩写 rs)
replicationcontrollers (缩写 rc)
resourcequotas (缩写 quota)
serviceaccounts (缩写 sa)
services (缩写 svc)
statefulsets (缩写 sts)
storageclasses (缩写 sc)

3、kubectl cp 命令

1)将“/tmp/foo_dir”本地目录拷贝到默认命名空间的远端pod的“/tmp/bar_dir”目录下

kubectl cp /tmp/foo_dir <some-pod>:/tmp/bar_dir

2)复制/tmp/foo本地文件到/tmp/bar在远程pod在一个特定的容器

kubectl cp /tmp/foo <some-pod>:/tmp/bar -c <specific-container>

3)将/tmp/foo文件拷贝到远程pod中的/tmp/bar目录下

kubectl cp /tmp/foo <some-namespace>/<some-pod>:/tmp/bar

4)从远程pod拷贝/tmp/foo到本地/tmp/bar

kubectl cp <some-namespace>/<some-pod>:/tmp/foo /tmp/bar

5)复制文件到pod的指定目录,也可从容器中复制文件到外部

kubectl cp fileName podName:/fileName
推荐阅读
cjavapy编程之路首页