banner
NEWS LETTER

Kubernetes拷贝文件

Scroll down

本文作者:丁辉

Kubernetes 拷贝文件

拷贝容器内文件到本地

方法一

使用 kubectl cp 拷贝

1
kubectl -n 命名空间 cp 容器名:/容器内文件路径 ./拷贝到本地文件名

示例:

1
kubectl -n test cp nginx-6db97db958-zrb7r:etc/nginx/nginx.conf ./nginx.conf

执行命令提示

1
tar: Removing leading `/' from member names

这是在提示你在 kubectl -n 命名空间 cp 容器名:<这里开头不用加 "/" >

方法二

寻找到本地 Docker 持久化存储 拷贝文件到本地

  • 获取容器 ID

    1
    CONTAINER_ID=$(kubectl -n 命名空间 describe  pod 容器名 | grep "Container ID:" | awk -F '/' '{print $3}')

    示例:

    1
    CONTAINER_ID=$(kubectl -n test describe  pod nginx-6db97db958-zrb7r | grep "Container ID:" | awk -F '/' '{print $3}')
  • 获取存储路径

    1
    docker inspect -f '{{.GraphDriver.Data.UpperDir}}' $CONTAINER_ID

方法三

  • 获取容器名称

    1
    kubectl -n 命名空间 describe  pod 容器名 | grep "Containers:" -A 1

    示例:

    1
    kubectl -n test describe  pod nginx-6db97db958-zrb7r | grep "Containers:" -A 1
  • 寻找 Docker 容器

    1
    docker ps | grep 容器名称
  • 拷贝容器内文件

    1
    docker cp 容器名称:/容器内路径 ./本地路径

拷贝本地文件到容器内

使用 kubectl cp 拷贝

1
kubectl -n 命名空间 cp ./本地文件名 容器名:/容器内路径

示例:

1
kubectl -n test cp ./default.conf nginx-6db97db958-zrb7r:/etc/nginx/conf.d/

I'm so cute. Please give me money.

其他文章
cover
Kubernetes无状态容器副本管理
  • 70/01/01
  • 00:00
  • Kubernetes-使用文档
cover
Kubernetes节点常用操作
  • 70/01/01
  • 00:00
  • Kubernetes-使用文档
目录导航 置顶
  1. 1. Kubernetes 拷贝文件
    1. 1.1. 拷贝容器内文件到本地
      1. 1.1.1. 方法一
      2. 1.1.2. 方法二
      3. 1.1.3. 方法三
    2. 1.2. 拷贝本地文件到容器内
请输入关键词进行搜索