web-dev-qa-db-fra.com

Comment copier un fichier depuis un conteneur dans un pod dans un espace de noms spécifique?

Disons que j’ai, my-namespace -> my-pod -> my-container et que j’ai un fichier situé dans my-container: /opt/Tomcat/logs/catalina.2017-05-02.log. J'ai appliqué la commande ci-dessous pour copier le fichier qui ne fonctionne pas,

kubectl cp my-namepace/my-pod:/opt/Tomcat/logs/catalina.2017-05-02.log -c my-container .

Note: J'ai le binaire tar sur mon conteneur

Erreur:

tar: Removing leading `/' from member names
error: open .: is a directory
21
zillani

cela fonctionne pour moi:

$(kubectl exec <pod-name> [-c <container-name>] -it -- cat <file-path>) > <local-file>
18
Gregory Patmore

Ce que vous demandez à kubectl de faire est de copier le fichier catalina.2017-05-02.log dans le contexte actuel, mais le contexte actuel est un répertoire. L'erreur indique que vous ne pouvez pas copier un fichier pour avoir le nom d'un répertoire.

Essayez de donner un nom à la version copiée du fichier:

kubectl cp my-namepace/my-pod:/opt/Tomcat/logs/catalina.2017-05-02.log -c my-container ./catalina.2017-05-02.log.

34
Simon I

J'ai remarqué que cela échouait lorsque vous tentiez de spécifier l'espace de nom (à la fois comme préfixe de l'identifiant du pod et en utilisant l'option -n). L'utilisation de l'identifiant du pod seul fonctionne pour moi:

kubectl cp postgres-1111111111-11abc:/tmp/dump.csv dump
3
Whimusical

Commande suivante kubectl cp NameSpace/POD_NAME:/DIR/FILE_NAME /tmp/ travaille pour moi.

2
Akash Sharma

J'ai trouvé cet usage le plus pratique pour moi

kubectl cp /tmp/file <your_namespace>/<your_pod>:/tmp/newfile

et autre direction

kubectl cp <your_namespace>/<your_pod>:/tmp/file /tmp/newfile
1
matson kepson

Supprimez "/" après ":" lors de la spécification du fichier conteneur.

Donc ça

kubectl cp my-namepace/my-pod:/opt/Tomcat/logs/catalina.2017-05-02.log -c my-container .

va se transformer en ceci:

kubectl cp my-namepace/my-pod:opt/Tomcat/logs/catalina.2017-05-02.log -c my-container .
0
user1321759

Je veux juste confirmer que la commande - kubectl cp - ne fonctionne pas comme documenté. J'utilise à la fois les options namespace et container.

0
user3646774