Come trasferire i file in un contenitore Docker

A volte potrebbe essere necessario trasferire file da un contenitore Docker al sistema host per scopi di backup, ecc. Questo può essere facilmente realizzato su Linux con lo strumento docker cp . Ecco come usarlo.

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

Come trasferire file da un contenitore Docker all'host utilizzando Docker CP

Se devi trasferire file al di fuori del tuo contenitore Docker sul sistema host, il modo più semplice e veloce per farlo è con lo strumento Docker CP. Per iniziare, accedi al tuo server tramite SSH o tramite un monitor fisico con un'interfaccia terminale .

Una volta effettuato l'accesso, accedi all'account Root. Puoi farlo in due modi. O con il comando su o il comando sudo -s .

su

O

sudo -s

Dopo aver effettuato l'accesso, eseguire il comando docker ps . L'esecuzione di questo comando mostrerà tutti i contenitori in esecuzione. Cerca l'ID del contenitore da cui intendi trasferire i file. Quindi, utilizza il seguente comando per accedere al contenitore.

Nota: sostituisci $id con il tuo ID contenitore.

docker exec -it $id /bin/bash

Ora che hai effettuato l'accesso al tuo contenitore Docker utilizzando il comando docker exec sopra, dovrai navigare nel contenitore e comprimere i file che desideri trasferire utilizzando Docker CP.

In questo esempio, utilizzeremo la cartella "test" nella /root/directory. Dovrai modificare questo comando in base alle tue esigenze.

tar -czvf mio-archivio.tar.gz /root/test/

Dopo aver compresso i file, esci dal contenitore. Puoi uscire dall'interfaccia del terminale nel tuo container Docker usando il seguente comando exit .

Uscita

Infine, trasferisci i tuoi file dal contenitore al sistema host.

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

Trasferimento di file senza compressione

Sebbene non sia consigliabile trasferire i file senza prima comprimerli (per motivi di sicurezza), puoi farlo. Se desideri semplicemente trasferire una directory contenente alcuni file, ecco come farlo.

Innanzitutto, determina il percorso della cartella accedendo al contenitore. Puoi accedere al contenitore con i comandi seguenti.

su

docker exec -it $id /bin/bash

Dopo aver determinato il percorso della cartella che desideri trasferire, esci dal contenitore. Quindi, esegui il seguente comando docker cp .

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

Come trasferire file dall'host a un contenitore Docker utilizzando Docker CP

Oltre a trasferire i file tramite il contenitore Docker all'host, è possibile trasferire nuovamente i file dall'host al contenitore. Ad esso, trova la posizione dei file che desideri trasferire nel tuo contenitore docker.

Quando hai individuato i file che desideri trasferire, usa il seguente comando per comprimerli. La compressione della cartella facilita il trasferimento.

tar -czvf mio-archivio.tar.gz /percorso/della/tua/cartella/

Dopo aver compresso la tua cartella in un archivio Tar.GZ, dovrai ottenere l'ID del contenitore in cui desideri trasferire i file. Innanzitutto, accedi a root usando su o sudo -s .

su

O

sudo -s

Dopo aver effettuato l'accesso all'account root, eseguire il comando docker ps . Questo comando mostrerà informazioni su tutti i contenitori in esecuzione. Puoi quindi prendere queste informazioni e utilizzare il comando docker cp per trasferire il tuo archivio compresso.

docker ps

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

Trasferimento di file senza compressione

Se desideri trasferire in un contenitore senza comprimere nulla, ecco come farlo. Innanzitutto, accedi a root usando su o sudo -s . Dopo aver effettuato l'accesso come root, trova il percorso della cartella che desideri trasferire.

Una volta ottenuto il percorso della cartella, utilizzare il comando docker ps per ottenere l'ID contenitore del contenitore in cui si desidera trasferire i file. Quindi, utilizzare il seguente comando docker cp per copiare i file nel sistema.

docker cp /percorso/del/mio/file/cartella/ CONTAINER_ID:/percorso/della/destinazione/

Come trasferire file da un contenitore Docker dall'host con Rsync

L'uso del comando docker cp dovrebbe essere sufficiente per trasferire i file da e verso gli host. Tuttavia, è anche possibile sincronizzare i file da un contenitore all'host. Tieni presente che devi avere un server SSH abilitato e in esecuzione sulla macchina host.

Per iniziare, accedi come root sul tuo server Linux host tramite il terminale. Puoi accedere all'account root usando su o sudo -s . Dopo aver effettuato l'accesso all'account root, eseguire il comando docker ps .

su

O

sudo -s

docker ps

Individua l'ID del contenitore Docker e accedi utilizzando il comando seguente. Quindi, installa lo strumento Rsync utilizzando il gestore pacchetti del contenitore. Assicurati di sostituire "$id" con l'ID contenitore.

docker exec -it $id /bin/bash

Dopo aver installato Rsync utilizzando il gestore pacchetti del contenitore, utilizza il comando Rsync di seguito per sincronizzare i file dal contenitore all'host.

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

Lascia un commento

Fix Screen Tearing on Intel Graphics in Pardus Linux: A Result-Focused Guide

Fix Screen Tearing on Intel Graphics in Pardus Linux: A Result-Focused Guide

Fix Intel graphics screen tearing in Pardus Linux by checking X11 vs. Wayland, compositor settings, refresh rate, active Xorg driver, and TearFree only when appropriate.

Come configurare il firewall di SLES 15 con firewall-cmd

Come configurare il firewall di SLES 15 con firewall-cmd

Configura firewalld su SLES 15: controlla le zone, consenti servizi o porte, salva le regole permanenti, ricarica in modo sicuro e verifica l'accesso.

Guida alla configurazione di SLES Live Patching: applicare gli aggiornamenti del kernel senza riavviare il sistema

Guida alla configurazione di SLES Live Patching: applicare gli aggiornamenti del kernel senza riavviare il sistema

Abilita l'applicazione di patch al kernel in tempo reale su SLES 15 SP7, applica le correzioni supportate senza riavviare, verifica le patch attive e scopri quando è comunque necessario riavviare il kernel.

Come abilitare la modalità FIPS su SUSE Linux Enterprise Server 15

Come abilitare la modalità FIPS su SUSE Linux Enterprise Server 15

Abilita la modalità FIPS su SLES 15 utilizzando l'utility di configurazione supportata da SUSE, riavvia in modo sicuro, verifica lo stato del kernel e delle policy crittografiche e controlla i limiti di certificazione.

Come installare Google Chrome su Gooroom OS senza violare le norme di sicurezza.

Come installare Google Chrome su Gooroom OS senza violare le norme di sicurezza.

Installa Google Chrome su Gooroom OS in modo sicuro con i pacchetti .deb ufficiali, APT, controlli delle policy, guida all'aggiornamento e correzioni per i dispositivi gestiti.

How to Export SLES System Logs to a Remote Syslog Server Securely

How to Export SLES System Logs to a Remote Syslog Server Securely

Securely forward SLES system logs to a remote syslog server with rsyslog, TLS certificates, peer-name verification, queues, validation, and testing.

Integrazione di Active Directory con SSSD in SLES 15: una guida passo passo

Integrazione di Active Directory con SSSD in SLES 15: una guida passo passo

Integra SLES 15 con Active Directory tramite SSSD utilizzando YaST. Prepara DNS e sincronizzazione oraria, configura gli accessi al dominio, verifica Kerberos e confronta SSSD, Winbind e realmd.

Fix Realtek RTL8821CE Wi-Fi Driver Issues on Pardus Linux

Fix Realtek RTL8821CE Wi-Fi Driver Issues on Pardus Linux

Fix RTL8821CE Wi-Fi on Pardus Linux by checking the built-in rtw88 driver, Realtek firmware, rfkill, NetworkManager, and safe fallback options.

Fix "Temporary Failure Resolving DNS" in Debian 12 with systemd-resolved

Fix "Temporary Failure Resolving DNS" in Debian 12 with systemd-resolved

Diagnose and fix Debian 12 DNS resolution failures with systemd-resolved, including resolv.conf, NetworkManager, networkd, cache, and verification.

Come installare Pardus Linux in dual boot insieme a Windows 11 in modo sicuro

Come installare Pardus Linux in dual boot insieme a Windows 11 in modo sicuro

Installa Pardus 25.2 accanto a Windows 11 eseguendo un backup, riducendo il volume di Windows, avviando da una chiavetta USB UEFI e proteggendo le partizioni EFI e di ripristino esistenti.