GNU/Linux >> Linux Esercitazione >  >> Panels >> Docker

Come aggiornare/aggiungere un file nell'immagine Docker

Il post discute come modificare un'immagine docker standard estratta da un repository pubblico nell'hub Docker secondo le tue necessità. Per l'esempio di questo post, estrarremo un'ultima immagine Docker CentOS e aggiungeremo una directory di test "test_dir" e creeremo un file di test "test_fiel".

Aggiunta di una directory e di un'immagine nell'immagine della finestra mobile

1. Il primo passo è estrarre un'immagine CentOS più recente dall'hub Docker.

# docker pull centos
Using default tag: latest
latest: Pulling from library/centos
d9aaf4d82f24: Pull complete 
Digest: sha256:4565fe2dd7f4770e825d4bd9c761a81b26e49cc9e3c9631c58cfc3188be9505a
Status: Downloaded newer image for centos:latest
# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
centos              latest              d123f4e55e12        2 weeks ago         197MB

2. Una volta scaricata l'immagine CentOS, eseguiremo il contenitore docker basato su questa immagine con il nome "centos_test".

# docker run -it --name="centos_test" centos:latest /bin/bash
[root@e121d03b20dc /]#

3. Ora creiamo una nuova directory nel contenitore "test_dir" con un file come "test_file". Aggiungi anche del testo casuale nel file_test.

[root@e121d03b20dc /]# mkdir test_dir
[root@e121d03b20dc /]# cd test_dir
[root@e121d03b20dc test_dir]# echo "This is a sample text" > test_file         
[root@e121d03b20dc test_dir]# cat test_file
This is a sample text
[root@e121d03b20dc test_dir]# ls -lrt
total 4
-rw-r--r--. 1 root root 22 Nov 19 16:12 test_file

4. Il passaggio successivo consiste nel creare la nuova immagine con il comando docker commit utilizzando il contenitore docker appena creato. Il comando 'docker commit' viene eseguito dall'host della finestra mobile e non dal contenitore della finestra mobile stesso.

# docker commit -m="This a test image" centos_test new_centos_image
sha256:93603e53ff5329b314da097e3e5607b60cd1ce126f48cae542c083c715f069f7

Ecco,
-m="Questa è un'immagine di prova" :è un messaggio di commit.
centos_test :nome del contenitore da cui stai creando l'immagine.
new_centos_image :Nome della nuova immagine creata.

5. Dopo aver eseguito il comando precedente, vedrai la nuova immagine "centos_image" nell'elenco delle immagini docker disponibili localmente sul sistema.

# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
new_centos_image    latest              93603e53ff53        52 seconds ago      197MB
centos              latest              d123f4e55e12        2 weeks ago         197MB

Test della nuova immagine della finestra mobile

Ora testeremo l'immagine appena creata eseguendo un nuovo contenitore su di essa. Dovremmo essere in grado di elencare la directory di test e il file di test creato nel nuovo contenitore.

1. Crea un nuovo contenitore dall'immagine appena creata.

# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
new_centos_image    latest              93603e53ff53        11 minutes ago      197MB
centos              latest              d123f4e55e12        2 weeks ago         197MB
# docker run -it --name="image_testing" new_centos_image:latest /bin/bash
[root@24bd49cd0e0e /]#

2. Verifica la directory di prova e il file di prova che abbiamo creato in precedenza nell'immagine.

[root@24bd49cd0e0e /]# ls -lrt test_dir
total 4
-rw-r--r--. 1 root root 22 Nov 19 17:09 test_file
[root@24bd49cd0e0e /]# cd test_dir
[root@24bd49cd0e0e test_dir]# cat test_file
This is a sample text


Docker
  1. Come aggiungere un file di scambio su Ubuntu

  2. Estrarre il file dall'immagine Docker?

  3. Come aggiungere/aggiornare un file a un archivio Tar.gz esistente?

  4. Come modificare le immagini Docker

  5. Come aggiungere il file .so a java.library.path in Linux

Come aggiungere un volume a un contenitore Docker esistente

Come ridurre le dimensioni dell'immagine Docker nei contenitori Docker

Come aggiornare le immagini Docker all'ultima versione

Docker File vs Docker Compose:qual è la differenza?

Come aggiungere un file di scambio su Ubuntu 20.04

Come creare e inviare un'immagine Docker al repository Docker Hub