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 项目中的其他地方进行。