说我有,my-namespace - > my-pod - >我的容器 我有一个位于my-container的文件:/opt/tomcat/logs/catalina.2017-05-02.log。我已应用以下命令复制不起作用的文件,
kubectl cp my-namepace/my-pod:/opt/tomcat/logs/catalina.2017-05-02.log -c my-container .
注意:我的容器上有tar二进制文件
错误:
tar: Removing leading `/' from member names
error: open .: is a directory
答案 0 :(得分:32)
您要求$args = array( 'showposts' => 20,
'cat' => array (1,2,7,8,9),
'meta_key' => 'datumsfeld',
'orderby' => 'meta_value',
'compare' => '>=',
'tax_query' => array(
array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => 'post-format-aside',
)
),
'meta_query' => array(
array(
'key' => 'datumsfeld',
'value' => '...' /* something like today */,
'compare' => '>=',
),
),
);
做的是将文件catalina.2017-05-02.log复制到当前上下文,但当前上下文是一个目录。该错误表明您无法复制文件以具有目录名称。
尝试为该文件的复制版本命名:
kubectl
。
答案 1 :(得分:17)
这对我有用:
$(kubectl exec <pod-name> [-c <container-name>] -it -- cat <file-path>) > <local-file>
答案 2 :(得分:3)
我注意到当你尝试指定命名空间时它都失败了(两者都作为pod标识符的前缀并使用-n
选项)
单独使用pod标识符对我有用:
kubectl cp postgres-1111111111-11abc:/tmp/dump.csv dump
答案 3 :(得分:2)
以下命令kubectl cp NameSpace/POD_NAME:/DIR/FILE_NAME /tmp/
对我有用。
答案 4 :(得分:1)
我发现这种用法对我来说最方便
kubectl cp /tmp/file <your_namespace>/<your_pod>:/tmp/newfile
和其他方向
kubectl cp <your_namespace>/<your_pod>:/tmp/file /tmp/newfile
答案 5 :(得分:1)
目的地也应该是文件名。因此,命令应为
kubectl cp my-namepace/my-pod:/opt/tomcat/logs/catalina.2017-05-02.log -c my-container ./catalina.2017-05-02.log
“ cat”命令对于ascii文件效果很好。其他文件会有限制,并且复制的文件可能已损坏。
答案 6 :(得分:1)
源文件和目标文件名应该相同,以下命令对我有用: kubectl cp名称空间/pod-name:abc.log。\ Desktop \ abc.log
答案 7 :(得分:0)
我只想确认-kubectl cp-命令不能如所记载的那样工作。我同时使用了命名空间和容器选项。
答案 8 :(得分:0)
在指定容器文件时,删除“:”之后的“ /”。
所以这个
kubectl cp my-namepace/my-pod:/opt/tomcat/logs/catalina.2017-05-02.log -c my-container .
会变成这样:
kubectl cp my-namepace/my-pod:opt/tomcat/logs/catalina.2017-05-02.log -c my-container .
答案 9 :(得分:0)
我尝试了上面所有给定的选项,它解决了错误,但警告仍然出现。
tar: Removing leading `/' from member names
顺便说一句,复制的文件还可以,只是警告有点混乱。
如果您使用绝对路径 kubectl cp namespace/pod:/somepath/somfile somepath/somefile
将打印相同的警告
所以如果文件在容器的工作目录中,删除绝对路径,警告就会消失。
k cp "default/name-redis-6d66b898d6-8xdkb:dump.rdb" ./dump.rdb
<块引用>