Kā ģenerēt Docker attēlu no konteinera

Ka Generet Docker Attelu No Konteinera



Docker attēli ir viens no galvenajiem Docker platformas komponentiem, un tiem ir būtiska loma Docker lietojumprogrammu izveidē, izvietošanā un nosūtīšanā konteinerā. Docker attēli ir konteineru veidnes vai momentuzņēmumi, kas konteineram norāda, kā konteinerizēt un izvietot lietojumprogrammu. Tūkstošiem oficiālu attēlu ir pieejami Docker Hub reģistrā, lai konteinerizētu lietojumprogrammu. Tomēr lietotāji var arī izveidot šos attēlus atbilstoši savām prasībām, izmantojot Dockerfile un Docker komponēšanas pakalpojumu.

Dažreiz lietotāji veic izmaiņas konteinera un konfigurācijas iestatījumos, taču šīs izmaiņas netiek veiktas Docker attēlā. Lai saglabātu konteinera izmaiņas attēlā vai izveidotu konteinera dublējumu, lietotājiem ir jāizveido jauns attēls no konteinera. Šim konkrētajam mērķim ' dokera apņemšanās ” var izmantot komandu.

Šī rokasgrāmata parādīs:







Kas ir “docker commit” komanda?

' dokera apņemšanās ” komanda ir viena no Docker komandrindas utilītprogrammām, kas tiek izmantota konteinera izmaiņu un iestatījumu ieviešanai Docker attēlā. To izmanto arī, lai izveidotu konteinera dublējumu, kad lietotājiem ir jāatbrīvo Docker, noņemot Docker konteinerus. Tomēr komanda Docker commit ietver tikai konteinera failu un konfigurācijas izmaiņas Docker attēlā, tā nekad nesaglabās konteinerā pievienotā sējuma datus.



Sintakse



dokera apņemšanās < IESPĒJAS > < Konteinera nosaukums / Konteinera ID > < Attēla nosaukums >

Iespējas





Tālāk norādītās opcijas tiek izmantotas kopā ar “ dokera apņemšanās ” komanda, lai izveidotu attēlu no konteinera dažādos veidos:

< stiprs > Opcija stiprs > td >
< td >< stiprs > Apraksts stiprs > td >
tr >
< tr >
< td >< stiprs > -a, --autors stiprs > td >
< td > To izmanto, lai norādītu tā autora vārdu, kurš veic konteinera izmaiņas iekšā attēls. td >
tr >
< tr >
< td >< stiprs > -c, -- mainīt stiprs > td >
< td > Pievienojiet Dockerfile norādījumus, lai veiktu izmaiņas iekšā attēlu. td >
tr >
< tr >
< td >< stiprs > -m, --ziņa stiprs > td >
< td > Pievienojiet apstiprinājuma ziņojumu vai komentāru kamēr attēla ģenerēšana no konteinera. td >
tr >
< tr >
< td >< stiprs > -p, --pauze stiprs > td >
< td > Konteinera pievienošanas laikā pēc noklusējuma konteinera darbība tiks apturēta vai apturēta. Lai apturētu konteinera apturēšanu, < stiprs > --pauze= viltus stiprs > ” opcija tiek izmantota.

Kā ģenerēt attēlu no Docker konteinera?

Ja lietotājs veic izmaiņas Docker konteinerā tieši caur konteinera čaulu vai neinteraktīvi, šīs izmaiņas nemaina konteinera momentuzņēmumu. Lai saglabātu vai veiktu izmaiņas, lietotājs var ģenerēt jaunu attēlu no konteinera, izmantojot “ dokera apņemšanās ” komandu. Tas ir noderīgi arī konteinera dublējuma izveidošanai.



Lai izveidotu attēlu, izmantojot Docker konteineru, skatiet šo attēlu.

1. darbība: izveidojiet Dockerfile

Vispirms izveidojiet jaunu failu ar nosaukumu ' Dockerfile ” un nepievienojiet nevienu faila paplašinājumu ar faila nosaukumu. Pēc tam ielīmējiet šādas komandas 'Dockerfile'

NO nginx: jaunākais

KOPĒT index.html / usr / dalīties / nginx / html / index.html

IEEJAS PUNKTS [ 'nginx' , '-g' , 'dēmons izslēgts;' ]

Šeit “ NO komanda tiek izmantota, lai definētu konteinera bāzes attēlu, KOPĒT komanda kopē programmas failu uz konteinera norādīto ceļu, un ' IEEJAS PUNKTS ” komanda iestata konteinera noklusējuma izpildāmos failus.

2. darbība: izveidojiet programmas failu

Pēc tam izveidojiet citu failu ' index.html ” un pievienojiet failam šādu HTML kodu:

< html >

< galvu >

< stils >

ķermeni {

fona krāsa: rgb ( 9 , 4 , 4 ) ;

}

h1 {

krāsa: rgb ( 221 , 219 , 226 ) ;

fonta stils: slīpraksts;

}

stils >

galvu >

< ķermeni >

< h1 > Šī ir pirmā HTML lapa h1 >

ķermeni >

html >

3. darbība: izveidojiet konteinera momentuzņēmumu

Tagad ģenerējiet konteinera momentuzņēmumu no Dockerfile, izmantojot tālāk norādīto komandu. Šeit “ -t ” opcija tiek izmantota, lai iestatītu momentuzņēmuma nosaukumu:

dokera uzbūve -t demo-attēls.

4. darbība. Palaidiet momentuzņēmumu, lai palaistu konteineru

Pēc tam sāciet konteineru, izpildot konteinera attēlu. Šim nolūkam izmantojiet ' Docker palaist ” komanda:

dokera skrējiens -lpp 80 : 80 --nosaukums demonstrācijas turpinājums -d demonstrācijas attēls

Iepriekš minētajā komandā ' -lpp opcija iestata konteinera eksponēšanas portu, ' -vārds ” norāda konteinera nosaukumu un “ -d ” opcija palaiž konteineru atdalītā režīmā:

Pēc konteinera izpildes dodieties uz “ http://localhost:80 ” URL un pārbaudiet, vai konteinerizētā programma ir pieejama atklātajā portā:

Iepriekš redzamā izvade parāda, ka mēs esam veiksmīgi startējuši konteineru.

5. darbība. Izveidojiet jaunu programmas failu

Dažkārt lietotājiem var būt nepieciešams pievienot papildu funkcijas esošajai lietojumprogrammai. Šim nolūkam lietotājam var būt nepieciešams veikt izmaiņas programmas failā vai pievienot lietojumprogrammai papildu failus.

Šim nolūkam izveidosim citu failu ar nosaukumu ' index1.html ” un ielīmējiet failā šādu kodu:

< html >

< galvu >

< stils >

ķermeni {

fona krāsa: rgb ( 106 , 103 , 103 ) ;

}

h1 {

krāsa: rgb ( 221 , 219 , 226 ) ;

fonta stils: slīpraksts;

}

stils >

galvu >

< ķermeni >

< h1 > Šī ir otrā HTML lapa h1 >

ķermeni >

html >

6. darbība: kopējiet jaunu programmas failu konteinerā

Lai kopētu jauno failu konteinera ceļā, izmantojiet “ docker cp : ” komandu. Šeit mēs esam nokopējuši ' index1.html ' failu uz ' demonstrācijas turpinājums ” konteinera norādītais ceļš:

dokeris cp index1.html demonstrācijas turpinājums: / usr / dalīties / nginx / html / index1.html

7. darbība: veiciet konteinera izmaiņas jaunā attēlā

Pēc izmaiņu veikšanas konteinerā lietotājiem ir jāievieš izmaiņas jaunā Docker attēlā. Šis attēls tiks ģenerēts, izmantojot Docker konteineru. Šim nolūkam palaidiet ' docker commit ” komanda:

docker commit demo-cont new-demo-img

Piezīme: Izmaiņu veikšana Docker konteinerā pirms attēla ģenerēšanas, izmantojot “ dokera apņemšanās ” komanda nav obligāta. Lietotāji var tieši izmantot “docker commit”, lai ģenerētu konteinera dublējumu, izveidojot attēlu.

8. darbība: apstiprinājums

Lai pārbaudītu, vai attēls ir izveidots konteinerā, uzskaitiet Docker attēlus, izmantojot ' dokera attēli ” komanda:

dokera attēli

Zemāk redzamā izvade parāda, ka esam veiksmīgi ģenerējuši ' jauns-demo-attēls 'no' demonstrācijas turpinājums ” konteiners:

Piezīme: Lai nosūtītu Docker attēlu uz Docker centrmezgla reģistru, lietotājs var arī atzīmēt attēlu, izmantojot “ docker tag ” komanda:

docker tag < attēla nosaukums > < repozitorija nosaukums >>< attēla nosaukums > : < tagu / versija >

9. darbība. Noņemiet veco konteineru

Tagad noņemiet veco konteineru. Šim nolūkam vispirms apturiet Docker konteineru, izmantojot ' doka pietura ” komanda:

docker stop demo-cont

Pēc tvertnes apturēšanas izmantojiet ' docker rm ” komanda, lai to noņemtu no Docker:

dokeris rm demonstrācijas turpinājums

10. darbība. Palaidiet jaunu konteineru no jauna izveidotā attēla

Tagad sāciet jauno gadījumu vai Docker konteineru, izmantojot jaunizveidoto attēlu, izmantojot “ dokera skrējiens ” komanda:

dokera skrējiens -lpp 80 : 80 --nosaukums demonstrācijas turpinājums -d jauns-demo-attēls

Tagad dodieties uz ' localhost:80 ” portu un pārbaudiet, vai HTML lietojumprogramma darbojas efektīvi vai nē:

Lai pārbaudītu tikko kopēto failu, kas ir “ index1.html ”, izmantojiet “ http://localhost/index1.html ” URL:

Iepriekš redzamā izvade parāda, ka veiktās izmaiņas ir veiksmīgi saglabātas mapē jauns-demo-attēls Docker attēls, un mēs esam efektīvi palaiduši modificēto konteineru.

Kā iestatīt attēla autoru?

' dokera apņemšanās ” komanda atbalsta arī dažādas opcijas, lai pievienotu papildu informāciju, kā arī veiktās izmaiņas, piemēram, jauno izmaiņu autors, ziņojuma apstiprināšana un tā tālāk.

Lai norādītu attēla autoru, kurš veic jaunās izmaiņas, veiciet norādītās darbības.

1. darbība: iestatiet attēla autoru

Lai norādītu attēla autoru, kurš veic izmaiņas, izmantojiet ' -a ” vai “ – autors opcija kopā ar ' dokera apņemšanās ” komanda:

dokera apņemšanās -a rafia demo-cont new-demo-img

2. darbība: pārbaudiet attēlu

Lai pārbaudītu, vai attēla autors ir iestatīts vai nē, pārbaudiet jaunģenerēto attēlu, izmantojot ' docker pārbauda ” komanda:

docker inspect new-demo-img

Izvade parāda, ka esam efektīvi iestatījuši attēla autoru:

Kā iestatīt attēla apstiprinājuma ziņojumu?

Lai iestatītu apstiprināšanas ziņojumu kopā ar izpildes izmaiņām, izmantojiet ' -m ” opciju. Ilustrācijai izpildiet tālāk sniegtos norādījumus.

1. darbība: iestatiet attēla apstiprināšanas ziņojumu

Lai iestatītu ziņojumu kopā ar veiktajām izmaiņām, izmantojiet ' docker commit -m <“ziņojums”> ” komanda:

dokera apņemšanās -a rafija -m 'Šo attēlu ģenerēja konteiners' demo-cont new-demo-img

2. darbība: pārbaudiet attēlu

Lai pārbaudītu apstiprinājuma ziņojumu, pārbaudiet attēlu, izmantojot ' docker pārbauda ” komanda:

docker inspect new-demo-img

Saskaņā ' komentēt ” taustiņu, lietotājs var redzēt apstiprinājuma ziņojumu, kā parādīts zemāk:

Tas viss attiecas uz Docker attēla ģenerēšanu no konteinera.

Secinājums

Lai ģenerētu Docker attēlu no konteinera, vispirms veiciet izmaiņas Docker konteinerā. Pēc tam izmantojiet ' docker commit ” komandu, lai ģenerētu attēlu no konteinera. Tagad noņemiet vecāko konteineru un sāciet jauno gadījumu, izmantojot jaunizveidoto attēlu. Lietotāji var arī iestatīt attēla autora vārdu, izmantojot “ -a ' opciju un apstipriniet ziņojumu, izmantojot ' -m ” opciju. Šajā emuārā ir parādīts, kā ģenerēt attēlus no Docker konteinera.