Esecuzione dello script shell in contenitore usando Docker Exec

Esecuzione dello script shell in contenitore usando Docker Exec

Lo script shell viene utilizzato per elaborare o eseguire più comandi contemporaneamente. È anche utilizzato per svolgere attività ripetitive. In Docker, è possibile utilizzare lo script shell per impostare il contenitore, specificare il programma o eseguire i comandi all'interno del contenitore. Più specificamente, per eseguire lo script shell nel contenitore, gli sviluppatori possono utilizzare Dockerfile o "Docker Exec"Comando. Dockerfile viene utilizzato per containerizzare il programma o il file. Tuttavia, il comando "Docker Exec" esegue i comandi all'interno di un contenitore usando la shell del contenitore.

Questo post dimostrerà come eseguire lo script shell all'interno di un contenitore usando il comando "Docker Exec".

Come eseguire lo script shell in contenitore usando "Docker Exec"?

Per eseguire lo script shell in un contenitore, prima, eseguire il contenitore e copiare lo script sul percorso del contenitore. Dopodiché, esegui lo script shell usando "Docker Exec Bash -c "Script""Comando.

Per la dimostrazione, seguire i passaggi indicati.

Passaggio 1: crea script shell

Innanzitutto, crea il file chiamato "test.sh"File e aggiungi i comandi che si desidera eseguire. Ad esempio, abbiamo specificato i due "eco"Comandi.

#!/Bin/Bash
echo "ciao"
Echo "Benvenuti a Linuxhint"


Nota: Il file deve iniziare con "#!/Bin/Bash"Per eseguire lo script nel contenitore.

Passaggio 2: eseguire il contenitore

Quindi, esegui il contenitore in cui si desidera eseguire lo script shell. Abbiamo usato il “Ubuntu: ultimo"Immagine per creare e avviare il contenitore. IL "-io"La flag esegue il contenitore in modo interattivo e"-T"Assegna il"Tty-pseudo"Terminale al contenitore:

Docker run -it --Name Test -Cont Ubuntu: più recente



Passaggio 3: copiare lo script su contenitore

Apri un'altra finestra del terminale, copia lo script sul percorso del contenitore con l'aiuto di "Docker CP:"Comando:

Docker CP ./test.SH Test-Cont:/TMP/Test.sh



Passaggio 4: eseguire lo script shell all'interno del contenitore

Quindi, eseguire lo script all'interno di un contenitore usando "Docker Exec"Comando come menzionato di seguito:

Docker Exec -It Test -Cont -Bash -c ". /TMP/Test.sh"


Qui, puoi vedere che abbiamo eseguito correttamente lo script shell nel contenitore:


Passaggio 5: verifica

Per la verifica, aprire la shell del contenitore ed eseguire il "ls"Comando per visualizzare file e directory:

Docker Exec -It Test -Cont SH
ls



Navigare verso il "tmp"Directory del contenitore attraverso il"CD"Comando. Dopodiché, esegui il “ls"Comando:

cd tmp
ls


Come puoi vedere, il "test.shLa sceneggiatura esiste nel "tmp"Directory del contenitore:


Si tratta di eseguire script di shell in un contenitore usando "Docker Exec".

Conclusione

Per eseguire lo script shell in un contenitore usando "Docker Exec"Comando, in primo luogo, crea lo script shell e copialo nel contenitore in esecuzione tramite"Docker CP"Comando. Dopodiché, esegui lo script shell utilizzando il "Docker Exec Bash -c """Comando. Questo post ha dimostrato la tecnica per eseguire lo script shell usando il comando "Docker Exec".