kubectl cp
概要
在容器之间双向复制文件和目录。
kubectl cp <file-spec-src> <file-spec-dest>
示例
# !!!Important Note!!!
# Requires that the 'tar' binary is present in your container
# image. If 'tar' is not present, 'kubectl cp' will fail.
#
# For advanced use cases, such as symlinks, wildcard expansion or
# file mode preservation, consider using 'kubectl exec'.
# Copy /tmp/foo local file to /tmp/bar in a remote pod in namespace <some-namespace>
tar cf - /tmp/foo | kubectl exec -i -n <some-namespace> <some-pod> -- tar xf - -C /tmp/bar
# Copy /tmp/foo from a remote pod to /tmp/bar locally
kubectl exec -n <some-namespace> <some-pod> -- tar cf - /tmp/foo | tar xf - -C /tmp/bar
# Copy /tmp/foo_dir local directory to /tmp/bar_dir in a remote pod in the default namespace
kubectl cp /tmp/foo_dir <some-pod>:/tmp/bar_dir
# Copy /tmp/foo local file to /tmp/bar in a remote pod in a specific container
kubectl cp /tmp/foo <some-pod>:/tmp/bar -c <specific-container>
# Copy /tmp/foo local file to /tmp/bar in a remote pod in namespace <some-namespace>
kubectl cp /tmp/foo <some-namespace>/<some-pod>:/tmp/bar
# Copy /tmp/foo from a remote pod to /tmp/bar locally
kubectl cp <some-namespace>/<some-pod>:/tmp/foo /tmp/bar
选项
-c, --container string | |
容器名称。如果省略,则使用 kubectl.kubernetes.io/default-container 注解来选择要附加的容器,或者选择 Pod 中的第一个容器。 | |
-h, --help | |
cp 命令帮助 | |
--no-preserve | |
复制到容器中的文件/目录的所有权和权限将不会保留。 | |
--retries int | |
设置从容器完成复制操作的重试次数。指定 0 以禁用,任何负值表示无限重试。默认值为 0(不重试)。 |
继承的父选项
--as string | |
用于操作的模拟用户名。用户可以是普通用户或命名空间中的服务账号。 | |
--as-group strings | |
用于操作的模拟用户组,可以重复此标志以指定多个用户组。 | |
--as-uid string | |
用于操作的模拟用户 UID。 | |
--cache-dir string 默认值:"$HOME/.kube/cache" | |
默认缓存目录 | |
--certificate-authority string | |
证书颁发机构的证书文件路径 | |
--client-certificate string | |
用于 TLS 的客户端证书文件路径 | |
--client-key string | |
用于 TLS 的客户端密钥文件路径 | |
--cluster string | |
要使用的 kubeconfig 集群的名称 | |
--context string | |
要使用的 kubeconfig 上下文的名称 | |
--default-not-ready-toleration-seconds int 默认值:300 | |
指示对于所有尚未设置 notReady:NoExecute 容忍度的 Pod,默认添加的容忍度的 tolerationSeconds 值。 | |
--default-unreachable-toleration-seconds int 默认值:300 | |
指示对于所有尚未设置 unreachable:NoExecute 容忍度的 Pod,默认添加的容忍度的 tolerationSeconds 值。 | |
--disable-compression | |
如果为 true,则对所有发往服务器的请求禁用响应压缩 | |
--insecure-skip-tls-verify | |
如果为 true,则不会检查服务器证书的有效性。这将使你的 HTTPS 连接不安全。 | |
--kubeconfig string | |
用于 CLI 请求的 kubeconfig 文件路径。 | |
--match-server-version | |
要求服务器版本与客户端版本匹配 | |
-n, --namespace string | |
如果存在,此 CLI 请求的命名空间范围 | |
--password string | |
用于 API 服务器基本认证的密码 | |
--profile string 默认值:"none" | |
要捕获的 Profile 名称。选项之一 (none|cpu|heap|goroutine|threadcreate|block|mutex) | |
--profile-output string 默认值:"profile.pprof" | |
写入 Profile 的文件名称 | |
--request-timeout string 默认值:"0" | |
对单个服务器请求放弃前的等待时长。非零值应包含对应的时间单位(例如 1s、2m、3h)。值为零表示不设置请求超时。 | |
-s, --server string | |
Kubernetes API 服务器的地址和端口 | |
--storage-driver-buffer-duration duration 默认值:1m0s | |
存储驱动中的写入将在此持续时间内进行缓冲,并作为单个事务提交到非内存后端。 | |
--storage-driver-db string 默认值:"cadvisor" | |
数据库名称 | |
--storage-driver-host string 默认值:"localhost:8086" | |
数据库主机:端口 | |
--storage-driver-password string 默认值:"root" | |
数据库密码 | |
--storage-driver-secure | |
使用安全连接连接数据库 | |
--storage-driver-table string 默认值:"stats" | |
表名称 | |
--storage-driver-user string 默认值:"root" | |
数据库用户名 | |
--tls-server-name string | |
用于服务器证书验证的服务器名称。如果未提供,则使用联系服务器时使用的主机名。 | |
--token string | |
用于 API 服务器认证的 Bearer Token | |
--user string | |
要使用的 kubeconfig 用户的名称 | |
--username string | |
用于 API 服务器基本认证的用户名 | |
--version version[=true] | |
--version, --version=raw 打印版本信息并退出;--version=vX.Y.Z... 设置报告的版本。 | |
--warnings-as-errors | |
将从服务器接收到的警告视为错误,并以非零退出码退出。 |
参见
- kubectl - kubectl 用于控制 Kubernetes 集群管理器
此页面是自动生成的。
如果您打算报告此页面的问题,请在问题描述中提及此页面是自动生成的。修复可能需要在 Kubernetes 项目中的其他地方进行。