Kaip sugeneruoti „Docker“ vaizdą iš konteinerio

Kaip Sugeneruoti Docker Vaizda Is Konteinerio



„Docker“ vaizdai yra vienas iš pagrindinių „Docker“ platformos komponentų ir atlieka esminį vaidmenį kuriant, diegiant ir siunčiant „Docker“ programas konteineryje. „Docker“ vaizdai yra sudėtinių rodinių šablonai arba momentinės kopijos, nurodančios konteineriui sudėti ir įdiegti programą. Tūkstančiai oficialių vaizdų yra prieinami Docker Hub registre, kad būtų galima sudėti programą. Tačiau vartotojai taip pat gali kurti šiuos vaizdus pagal savo reikalavimus naudodami „Dockerfile“ ir „Docker“ kūrimo paslaugą.

Kartais vartotojai keičia sudėtinio rodinio ir konfigūracijos nustatymus, tačiau šie pakeitimai nėra atlikti „Docker“ vaizde. Norėdami išsaugoti vaizdo sudėtinio rodinio pakeitimus arba sukurti atsarginę sudėtinio rodinio kopiją, vartotojai turi sukurti naują vaizdą iš sudėtinio rodinio. Tam konkrečiam tikslui „ dokeris įsipareigoja “ komanda gali būti naudojama.

Šis vadovas parodys:







Kas yra „docker commit“ komanda?

dokeris įsipareigoja ” komanda yra viena iš „Docker“ komandinės eilutės paslaugų, kuri naudojama konteinerio pakeitimams ir parametrams įvesti „Docker“ atvaizde. Jis taip pat naudojamas kuriant konteinerio atsarginę kopiją, kai naudotojai turi pašalinti „Docker“ netvarką pašalindami „Docker“ konteinerius. Tačiau komanda „Docker commit“ apima tik konteinerio failą ir konfigūracijos pakeitimus „Docker“ vaizde, ji niekada neišsaugos su konteineriu prijungto tomo duomenų.



Sintaksė



dokeris įsipareigoja < GALIMYBĖS > < Konteinerio pavadinimas / Sudėtinio rodinio ID > < Vaizdo pavadinimas >

Galimybės





Šios parinktys naudojamos su „ dokeris įsipareigoja “ komanda, norėdami sukurti vaizdą iš konteinerio įvairiais būdais:

< stiprus > Parinktis stiprus > td >
< td >< stiprus > apibūdinimas stiprus > td >
tr >
< tr >
< td >< stiprus > -a, --autorius stiprus > td >
< td > Jis naudojamas nurodyti autoriaus, kuris atlieka sudėtinio rodinio pakeitimus, vardą in paveikslas. td >
tr >
< tr >
< td >< stiprus > -c, -- pakeisti stiprus > td >
< td > Pridėkite Dockerfile instrukcijas, kad patvirtintumėte pakeitimus in vaizdas. td >
tr >
< tr >
< td >< stiprus > -m, -pranešimas stiprus > td >
< td > Pridėkite įsipareigojimo pranešimą arba komentarą kol generuoti vaizdą iš konteinerio. td >
tr >
< tr >
< td >< stiprus > -p, -pauzė stiprus > td >
< td > Įkeliant sudėtinį rodinį pagal numatytuosius nustatymus jis bus sustabdytas arba pristabdytas. Norėdami sustabdyti sudėtinio rodinio pristabdymą, „ < stiprus > --pauzė= klaidinga stiprus > “ yra naudojama parinktis.

Kaip sugeneruoti vaizdą iš „Docker“ konteinerio?

Kai vartotojas atlieka pakeitimus Docker konteineryje tiesiogiai per konteinerio apvalkalą arba neinteraktyviai, šie pakeitimai nekeičia sudėtinio rodinio momentinio vaizdo. Norėdami išsaugoti arba atlikti pakeitimus, vartotojas gali sugeneruoti naują vaizdą iš konteinerio, naudodamas ' dokeris įsipareigoja “ komanda. Tai taip pat naudinga kuriant konteinerio atsarginę kopiją.



Norėdami sukurti vaizdą naudodami „Docker“ konteinerį, peržiūrėkite šią iliustraciją.

1 veiksmas: sukurkite „Dockerfile“.

Pirmiausia sukurkite naują failą pavadinimu ' Dockerfile “ ir nepridėkite jokio failo plėtinio su failo pavadinimu. Po to įklijuokite šias komandas į „Dockerfile“

IŠ nginx: naujausias

KOPIJUOTI index.html / usr / Dalintis / nginx / html / index.html

ĮEJIMAS [ 'nginx' , '-g' , 'Demonas išjungtas'; ]

Čia „ NUO komanda naudojama konteinerio baziniam vaizdui apibrėžti, KOPIJUOT komanda nukopijuoja programos failą į nurodytą konteinerio kelią, o ĮEJIMAS “ komanda nustato numatytuosius konteinerio vykdomuosius failus.

2 veiksmas: sukurkite programos failą

Tada sukurkite kitą failą ' index.html “ ir prie failo pridėkite šį HTML kodą:

< html >

< galva >

< stilius >

kūnas {

fono spalva: rgb ( 9 , 4 , 4 ) ;

}

h1 {

spalva: rgb ( 221 , 219 , 226 ) ;

šrifto stilius: kursyvas;

}

stilius >

galva >

< kūnas >

< h1 > Tai pirmasis HTML puslapis h1 >

kūnas >

html >

3 veiksmas: sukurkite konteinerio momentinį vaizdą

Dabar sugeneruokite konteinerio momentinį vaizdą iš Dockerfile naudodami toliau pateiktą komandą. Čia „ -t “ parinktis naudojama momentinės nuotraukos pavadinimui nustatyti:

dokerio konstrukcija -t demonstracinis vaizdas.

4 veiksmas: paleiskite momentinį vaizdą, kad paleistumėte konteinerį

Tada paleiskite konteinerį vykdydami konteinerio vaizdą. Šiuo tikslu naudokite „ docker paleisti “ komanda:

dokininko bėgimas -p 80 : 80 --vardas demonstracinis tęsinys -d demonstracinis vaizdas

Aukščiau pateiktoje komandoje „ -p “ parinktis nustato konteinerio atskleidimo prievadą, “ -vardas “ nurodo konteinerio pavadinimą ir „ -d Parinktis paleidžia konteinerį atskirtu režimu:

Įvykdę konteinerį, eikite į „ http://localhost:80 ” URL ir patikrinkite, ar konteinerinė programa pasiekiama atvirajame prievade, ar ne:

Aukščiau pateikta išvestis rodo, kad mes sėkmingai paleidome konteinerį.

5 veiksmas: sukurkite naują programos failą

Kartais naudotojams gali tekti pridėti papildomų funkcijų prie veikiančios programos. Šiuo tikslu vartotojui gali tekti pakeisti programos failą arba pridėti papildomų failų prie programos.

Šiuo tikslu sukurkime kitą failą pavadinimu „ index1.html “ ir įklijuokite šį kodą į failą:

< html >

< galva >

< stilius >

kūnas {

fono spalva: rgb ( 106 , 103 , 103 ) ;

}

h1 {

spalva: rgb ( 221 , 219 , 226 ) ;

šrifto stilius: kursyvas;

}

stilius >

galva >

< kūnas >

< h1 > Tai antrasis HTML puslapis h1 >

kūnas >

html >

6 veiksmas: nukopijuokite naują programos failą į konteinerį

Norėdami nukopijuoti naują failą į konteinerio kelią, naudokite ' docker cp : “ komanda. Čia mes nukopijavome „ index1.html “ failą į „ demonstracinis tęsinys “ nurodytas konteinerio kelias:

dokininkas cp index1.html demo-cont: / usr / Dalintis / nginx / html / index1.html

7 veiksmas: atlikite sudėtinio rodinio pakeitimus naujame vaizde

Atlikę pakeitimus sudėtiniame rodinyje, vartotojai turi atlikti pakeitimus naujame „Docker“ atvaizde. Šis vaizdas bus sugeneruotas naudojant Docker konteinerį. Šiuo tikslu paleiskite „ docker commit “ komanda:

docker commit demo-cont new-demo-img

Pastaba: „Docker“ konteinerio pakeitimų atlikimas prieš generuojant vaizdą naudojant „ dokeris įsipareigoja “ komanda nėra privaloma. Vartotojai gali tiesiogiai naudoti „docker commit“, kad sukurtų konteinerio atsarginę kopiją, sukurdami vaizdą.

8 veiksmas: patvirtinimas

Norėdami patikrinti, ar vaizdas sukurtas per konteinerį, išvardykite „Docker“ vaizdus naudodami „ dokerio vaizdai “ komanda:

dokerio vaizdai

Žemiau pateikta produkcija rodo, kad sėkmingai sugeneravome naujas demonstracinis vaizdas “ iš „ demonstracinis tęsinys “ konteineris:

Pastaba: Norėdami perkelti „Docker“ vaizdą į „Docker“ centro registrą, vartotojas taip pat gali pažymėti vaizdą naudodami „ dokerio žyma “ komanda:

dokerio žyma < vaizdo pavadinimas > < saugyklos pavadinimas >>< vaizdo pavadinimas > : < žyma / versija >

9 veiksmas: pašalinkite seną konteinerį

Dabar išimkite senesnį konteinerį. Šiuo tikslu pirmiausia sustabdykite „Docker“ konteinerį naudodami „ dokerio stotelė “ komanda:

dokerio sustabdymo demonstracinis tęsinys

Sustabdę talpyklą, naudokite „ docker rm “ komanda, kad pašalintų ją iš „Docker“:

dokininkas rm demonstracinis tęsinys

10 veiksmas: paleiskite naują konteinerį iš naujo įvesto vaizdo

Dabar paleiskite naują egzempliorių arba „Docker“ konteinerį naudodami naujai sugeneruotą vaizdą naudodami „ dokininko bėgimas “ komanda:

dokininko bėgimas -p 80 : 80 --vardas demonstracinis tęsinys -d naujas demonstracinis vaizdas

Dabar eikite į „ Localhost:80 “ prievadą ir patikrinkite, ar HTML programa veikia efektyviai, ar ne:

Norėdami patikrinti naujai nukopijuotą failą, kuris yra „ index1.html “, naudokite „ http://localhost/index1.html ” URL:

Aukščiau pateikta išvestis rodo, kad atlikti pakeitimai sėkmingai išsaugoti „ naujas demonstracinis vaizdas Docker vaizdas ir mes efektyviai paleidome modifikuotą konteinerį.

Kaip nustatyti vaizdo autorių?

dokeris įsipareigoja ” komanda taip pat palaiko įvairias parinktis pridėti papildomos informacijos kartu su atliktais pakeitimais, pvz., naujų pakeitimų autorius, patvirtinti pranešimą ir pan.

Norėdami nurodyti vaizdo autorių, kuris atlieka naujus pakeitimus, atlikite nurodytus veiksmus.

1 veiksmas: nustatykite vaizdo autorių

Norėdami nurodyti vaizdo autorių, kuris atlieka pakeitimus, naudokite „ -a “ arba „ – autorius “ parinktis kartu su „ dokeris įsipareigoja “ komanda:

dokeris įsipareigoja -a rafia demo-cont new-demo-img

2 veiksmas: patikrinkite vaizdą

Norėdami patikrinti, ar vaizdo autorius nustatytas, ar ne, patikrinkite naujai sukurtą vaizdą naudodami „ dokeris tikrina “ komanda:

docker inspect new-demo-img

Išvestis rodo, kad mes efektyviai nustatėme vaizdo autorių:

Kaip nustatyti įspėjamąjį vaizdo pranešimą?

Norėdami nustatyti patvirtinimo pranešimą kartu su įvykdymo pakeitimais, naudokite „ -m “ variantas. Norėdami iliustruoti, vadovaukitės toliau pateiktomis instrukcijomis.

1 veiksmas: nustatykite vaizdo patvirtinimo pranešimą

Norėdami nustatyti pranešimą kartu su atliktais pakeitimais, naudokite „ docker commit -m <'pranešimas'> “ komanda:

dokeris įsipareigoja -a rafija -m 'Šis vaizdas sukurtas konteinerio' demo-cont new-demo-img

2 veiksmas: patikrinkite vaizdą

Norėdami patikrinti patvirtinimo pranešimą, patikrinkite vaizdą naudodami „ dokeris tikrina “ komanda:

docker inspect new-demo-img

Pagal ' komentuoti “, vartotojas gali matyti patvirtinimo pranešimą, kaip parodyta toliau:

Tai viskas apie Docker vaizdo generavimą iš konteinerio.

Išvada

Norėdami sugeneruoti Docker vaizdą iš konteinerio, pirmiausia atlikite pakeitimus Docker konteineryje. Po to naudokite „ docker commit “ komanda, kad sugeneruotų vaizdą iš konteinerio. Dabar pašalinkite senesnį konteinerį ir paleiskite naują egzempliorių naudodami naujai sugeneruotą vaizdą. Vartotojai taip pat gali nustatyti vaizdo autoriaus vardą naudodami „ -a “ parinktį ir patvirtinkite pranešimą naudodami „ -m “ variantas. Šiame tinklaraštyje parodyta, kaip generuoti vaizdus iš Docker konteinerio.