Skip to content

Cum să copiezi fișiere între container și host cu docker cp

DodaTech Updated 2025-01-15 2 min read

In this tutorial, you'll learn about Cum să copiezi fișiere între container și host cu docker cp. We cover key concepts, practical examples, and best practices.

Vei învăța cum să copiezi fișiere și directoare între un container Docker și sistemul host folosind comanda docker cp.

Problema

Ai nevoie să extragi fișiere de log dintr-un container pentru analiză, să adaugi un fișier de configurare sau să faci backup la datele unei aplicații containerizate. Fără docker cp, ai fi nevoit să montezi volume sau să construiești o imagine nouă.

Modul Greșit

docker cp /local/fisier.txt meu-container

Lipsa căii complete din container cauzează eroarea no such directory. Comanda eșuează fără a specifica destinația exactă.

Modul Corect

docker cp /home/user/config.json meu-container:/app/config.json
docker cp meu-container:/app/logs/app.log /home/user/logs/

Output:

Successfully copied 2.56kB to /home/user/logs/

Pași Detaliați

1. Copiază de pe host în container

docker cp /cale/local/fisier.txt container:/cale/container/

2. Copiază din container pe host

docker cp container:/cale/container/fisier.txt /cale/local/

3. Copiază directoare întregi

docker cp /cale/local/director/ container:/cale/container/director/
docker cp container:/cale/container/director/ /cale/local/

Sfaturi de Prevenire

  • Verifică dacă containerul rulează înainte de a copia -- docker cp funcționează și pe containere oprite
  • Calea din container trebuie să existe, altfel Docker o creează ca fișier, nu ca director
  • Pentru copii mari, montează un volum în loc să folosești docker cp
  • Folosește tar pentru copii complexe cu permisiuni păstrate

Greșeli Comune

  1. Cale inexistentă în container -- directorul de destinație nu există și Docker creează un fișier în loc
  2. Lipsa separatorului -- container:cale în loc de container:/cale/absoluta
  3. Permisiuni incorecte -- fișierul copiat aparține lui root și nu poate fi accesat de utilizatorul normal
  4. Container oprit -- docker cp funcționează și pe containere oprite, dar verifică starea
  5. Sobrescriere neintenționată -- fișierele existente sunt suprascrise fără avertizare

Întrebări Frecvente

### Pot copia fișiere între containere?

Nu direct. Copiază mai întâi din containerul sursă pe host, apoi din host în containerul destinație: docker cp container1:/fisier . && docker cp fisier container2:/fisier.

docker cp păstrează permisiunile?

Da, docker cp păstrează permisiunile și ownership-ul fișierelor atunci când copiază între container și host.

Pot copia în timp ce containerul rulează?

Da, docker cp funcționează și pe containere în execuție. Pentru consistența datelor, oprește aplicația care scrie în fișier înainte de copiere.

Construit de dezvoltatorii Doda Browser, DodaZIP și Durga Antivirus Pro. Instrumentele DodaTech se integrează perfect cu Docker pentru productivitate și securitate sporite.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro