集群容器内与本地文件互传

Docker

docker容器与主机文件互传

语法:docker cp

$ docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-

$ docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

OPTIONS说明:

  • -L :保持源目标中的链接

示例:

 1.  主机 /tmp/data目录拷贝到容器ID为ab23080cd5e3的 /data 目录下。

$ docker cp /tmp/data ab23080cd5e3:/data/

2.  主机 /tmp/data目录拷贝到容器ID为ab23080cd5e3中,目录重命名为data。

$ docker cp /tmp/data ab23080cd5e3:/data

3. 将ID为ab23080cd5e3的容器/var/log 目录拷贝到主机的 /tmp/ 目录下。

$ docker cp ab23080cd5e3:/var/log /tmp/

kubernetes集群内

集群pod内文件与主机互传。

方法一:kubectl cp

语法:

#1. 本地上传到pod内
$ kubectl cp <本地文件或目录路径>  -n <namespace名称> <Pod名称>:<目标路径>

#2. pod内下载到本地
$ kubectl cp -n <namespace名称>  <Pod名称>:<Pod中文件路径>  <本地目标路径>

示例:

1. 拷贝主机localfile.txt 文件到namespacedev-test名为my-pod的pod中/path/路径下:

$ kubectl cp localfile.txt -n dev-test my-pod:/path/

2.namespace为 dev-test my-pod/path/file.txt 文件下载到主机当前路径下,并重命名为filenew.txt:

$ kubectl cp -n dev-test my-pod:/path/file.txt  ./filenew.txt

方法二:kubectl exec

语法:

#pod文件下载到本地

$ kubectl exec -it -n <namespace> <Pod名称> -- cat <Pod中文件路径> > <本地路径>

示例:

1. namespace为 dev-test,pod名为 my-pod 中的 /path/file.txt 将文件内容输出到本地文件:

$ kubectl exec -it -n dev-test my-pod -- cat /path/file.txt > file.txt

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值