[2] Docker – Dodawanie obrazu kontenera

24 lutego 2021 Wyłączono przez Adam [zicherka] Nogły

Dodaj utworzone obrazy kontenerów.

[1] Dla przykładu zaktualizujemy oficjalny obraz, instalując Nginx i dodaj go jako nowy obraz do kontenera. Kontener jest generowany za każdym razem w celu wykonania polecenia docker run, więc dodaj najnowszy wykonany kontener w następujący sposób.

# pokaż obrazy
[root@vlsr01 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 300e315adb2f 2 months ago 209MB

# uruchom kontener i zainstaluj Nginx
[root@vlsr01 ~]# docker run centos /bin/bash -c "dnf -y install nginx"

[root@vlsr01 ~]# docker ps -a | head -2
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
44841b19addd centos "/bin/bash -c 'dnf -…" About a minute ago Exited (0) 45 seconds ago frosty_goldwasser

# dodaj obraz
[root@vlsr01 ~]# docker commit 44841b19addd zicher.lab/centos-nginx
sha256:dcadb9d7413ee2b9381bf074c31b9edb1f562b463ff6ca2037c71bb25dff590e

[root@vlsr01 ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
zicher.lab/centos-nginx latest dcadb9d7413e 17 seconds ago 289MB
centos latest 300e315adb2f 2 months ago 209MB

# wygeneruj kontener z utworzonego obrazu, następnie wykonaj komendę [which] aby upewnić się, czy nginx istnieje w nim
[root@vlsr01 ~]# docker run zicher.lab/centos-nginx /usr/bin/whereis nginx
nginx: /usr/sbin/nginx /usr/lib64/nginx /etc/nginx /usr/share/nginx /usr/share/man/man3/nginx.3pm.gz /usr/share/man/man8/nginx.8.gz