Bestanden overbrengen naar een Docker-container

Soms moet u bestanden van een Docker- container naar het hostsysteem overbrengen voor back-updoeleinden, enz. Dit kan eenvoudig worden bereikt op Linux met de docker cp- tool. Hier is hoe het te gebruiken.

xr:d:DAFds8YL9ik:2,j:43601822907,t:23032003

Bestanden overbrengen van een Docker-container naar de host met behulp van Docker CP

Als u bestanden buiten uw Docker-container naar het hostsysteem moet overbrengen, is de snelste en gemakkelijkste manier om dit te doen met de Docker CP-tool. Log om te beginnen in op uw server via SSH of via een fysieke monitor met een terminalinterface .

Nadat u bent ingelogd, gaat u naar het root-account. U kunt dit op twee manieren doen. Ofwel met de opdracht su of de opdracht sudo -s .

zo

Of

sudo -s

Voer na het inloggen de opdracht docker ps uit . Als u deze opdracht uitvoert, worden alle actieve containers weergegeven. Zoek naar de ID van de container waaruit u bestanden wilt overzetten. Gebruik vervolgens de volgende opdracht om u aan te melden bij de container.

Opmerking: vervang $id door uw container-ID.

docker exec -it $id /bin/bash

Nu u bent ingelogd op uw Docker-container met de opdracht docker exec hierboven, moet u door de container navigeren en de bestanden comprimeren die u wilt overbrengen met behulp van Docker CP.

In dit voorbeeld gebruiken we de map "test" in de /root/map. U moet deze opdracht aanpassen aan uw behoeften.

tar -czvf mijn-archief.tar.gz /root/test/

Na het comprimeren van de bestanden verlaat u de container. U kunt de terminalinterface in uw Docker-container afsluiten met de volgende exit- opdracht.

Uitgang

Breng ten slotte uw bestanden over van de container naar het hostsysteem.

docker cp CONTAINER_ID:/path/to/archive.tar.gz /host/system/folder/

Bestanden overzetten zonder compressie

Hoewel het niet wordt aanbevolen om bestanden over te zetten zonder ze eerst te comprimeren (voor de veiligheid), is dat wel mogelijk. Als je gewoon een map wilt overzetten die enkele bestanden bevat, kun je dit als volgt doen.

Bepaal eerst het pad van de map door in te loggen op de container. U kunt met onderstaande commando's inloggen op de container.

zo

docker exec -it $id /bin/bash

Na het bepalen van het pad naar de map die u wilt overbrengen, verlaat u de container. Voer vervolgens de volgende docker cp -opdracht uit.

docker cp CONTAINER_ID:/path/to/your/folder/ /host/system/folder/

Bestanden overbrengen van de host naar een Docker-container met behulp van Docker CP

Naast het overzetten van bestanden via de Docker-container naar de host, is het mogelijk om bestanden van de host terug te zetten naar de container. Zoek de locatie van de bestanden die u naar uw docker-container wilt overbrengen.

Wanneer u de bestanden hebt gevonden die u wilt overzetten, gebruikt u de volgende opdracht om ze te comprimeren. Door de map te comprimeren, wordt de overdracht gemakkelijker.

tar -czvf mijn-archief.tar.gz /path/to/your/folder/

Nadat je je map hebt gecomprimeerd tot een Tar.GZ-archief, moet je de ID krijgen van de container waarnaar je bestanden wilt overbrengen. Log eerst in op root met su of sudo -s .

zo

Of

sudo -s

Nadat u zich hebt aangemeld bij het root-account, voert u de opdracht docker ps uit. Deze opdracht toont informatie over alle actieve containers. U kunt deze informatie vervolgens gebruiken en de opdracht docker cp gebruiken om uw gecomprimeerde archief over te dragen.

havenarbeider ps

docker cp /path/to/my-archive.tar.gz CONTAINER_ID:/path/to/destination/

Bestanden overzetten zonder compressie

Als u naar een container wilt overbrengen zonder iets te comprimeren, kunt u dit als volgt doen. Log eerst in op root met su of sudo -s . Nadat je bent ingelogd als root, zoek je het mappad op dat je wilt overzetten.

Zodra u het mappad hebt, gebruikt u de opdracht docker ps om de container-ID op te halen van de container waarnaar u bestanden wilt overbrengen. Gebruik vervolgens de volgende docker cp -opdracht om de bestanden naar uw systeem te kopiëren.

docker cp /pad/naar/mijn/bestand/map/ CONTAINER_ID:/pad/naar/bestemming/

Bestanden overzetten van een Docker-container van de host met Rsync

Het gebruik van de opdracht docker cp zou voldoende moeten zijn om bestanden van en naar hosts over te brengen. Het is echter ook mogelijk om bestanden van een container naar de host te Rsync. Houd er rekening mee dat u een SSH-server moet hebben ingeschakeld en op de hostcomputer moet draaien.

Meld u om te beginnen aan als root op uw Linux-hostserver via de terminal. U kunt inloggen op het root-account met behulp van su of sudo -s . Nadat u zich hebt aangemeld bij het root-account, voert u de opdracht docker ps uit.

zo

Of

sudo -s

havenarbeider ps

Zoek de Docker-container-ID en log in met de onderstaande opdracht. Installeer vervolgens de Rsync-tool met behulp van de pakketbeheerder van de container. Zorg ervoor dat u "$id" vervangt door de container-ID.

docker exec -it $id /bin/bash

Nadat u Rsync hebt geïnstalleerd met behulp van de pakketbeheerder van de container, gebruikt u de onderstaande Rsync-opdracht om bestanden van de container naar de host te synchroniseren.

rsync -avz -e ssh /path/to/local/files/ user@remote:/path/to/remote/files/

Laat een reactie achter

Schermscheuren op Intel-graphics in Pardus Linux verhelpen: een resultaatgerichte handleiding

Schermscheuren op Intel-graphics in Pardus Linux verhelpen: een resultaatgerichte handleiding

Los schermscheuren met Intel-graphics in Pardus Linux op door te controleren of X11 of Wayland wordt gebruikt, de compositorinstellingen aan te passen, de vernieuwingsfrequentie te controleren, de actieve Xorg-driver te gebruiken en TearFree alleen in te schakelen wanneer dit nodig is.

Hoe configureer je de SLES 15-firewall met firewall-cmd?

Hoe configureer je de SLES 15-firewall met firewall-cmd?

Configureer firewalld op SLES 15: controleer zones, sta services of poorten toe, sla permanente regels op, herlaad veilig en controleer de toegang.

SLES Live Patching Configuratiehandleiding: Kernelupdates toepassen zonder opnieuw op te starten

SLES Live Patching Configuratiehandleiding: Kernelupdates toepassen zonder opnieuw op te starten

Schakel live kernelpatching in op SLES 15 SP7, pas ondersteunde patches toe zonder opnieuw op te starten, controleer actieve patches en begrijp wanneer een herstart van de kernel nog steeds nodig is.

Hoe schakel ik de FIPS-modus in op SUSE Linux Enterprise Server 15?

Hoe schakel ik de FIPS-modus in op SUSE Linux Enterprise Server 15?

Schakel de FIPS-modus in op SLES 15 met behulp van het door SUSE ondersteunde installatieprogramma, herstart het systeem veilig, controleer de status van de kernel en het cryptografische beleid en controleer de certificeringslimieten.

Hoe installeer je Google Chrome op Gooroom OS zonder de beveiligingsrichtlijnen te schenden?

Hoe installeer je Google Chrome op Gooroom OS zonder de beveiligingsrichtlijnen te schenden?

Installeer Google Chrome veilig op Gooroom OS met officiële .deb-pakketten, APT, beleidscontroles, update-instructies en oplossingen voor beheerde apparaten.

Hoe exporteer ik SLES-systeemlogboeken veilig naar een externe Syslog-server?

Hoe exporteer ik SLES-systeemlogboeken veilig naar een externe Syslog-server?

Stuur SLES-systeemlogboeken veilig door naar een externe syslog-server met rsyslog, TLS-certificaten, peer-naamverificatie, wachtrijen, validatie en testen.

SLES 15 Active Directory-integratie met SSSD: een stapsgewijze handleiding

SLES 15 Active Directory-integratie met SSSD: een stapsgewijze handleiding

Voeg SLES 15 toe aan Active Directory met SSSD via YaST. Bereid DNS en tijd voor, configureer domeinaanmeldingen, verifieer Kerberos en vergelijk SSSD, Winbind en realmd.

Los problemen met de Realtek RTL8821CE Wi-Fi-driver op in Pardus Linux.

Los problemen met de Realtek RTL8821CE Wi-Fi-driver op in Pardus Linux.

Los de RTL8821CE Wi-Fi-problemen op in Pardus Linux door de ingebouwde rtw88-driver, de Realtek-firmware, rfkill, NetworkManager en veilige terugvalopties te controleren.

Los het probleem "Tijdelijke fout bij het oplossen van DNS" op in Debian 12 met systemd-resolved.

Los het probleem "Tijdelijke fout bij het oplossen van DNS" op in Debian 12 met systemd-resolved.

Diagnoseer en los DNS-resolutieproblemen op in Debian 12 met systemd-resolved, inclusief problemen met resolv.conf, NetworkManager, networkd, cache en verificatie.

Hoe je Pardus Linux veilig naast Windows 11 kunt installeren (dual boot)

Hoe je Pardus Linux veilig naast Windows 11 kunt installeren (dual boot)

Installeer Pardus 25.2 naast Windows 11 door een back-up te maken, het Windows-volume te verkleinen, op te starten vanaf een UEFI USB-stick en de bestaande EFI- en herstelpartities te beschermen.