Minsan, ang mga user ay gumagawa ng mga pagbabago sa mga setting ng container at configuration, ngunit ang mga pagbabagong ito ay hindi ginawa sa larawan ng Docker. Para i-save ang mga pagbabago sa container sa larawan o para gawin ang backup ng container, kinakailangan ng mga user na bumuo ng bagong larawan mula sa container. Para sa partikular na layunin, ang ' gumawa ng docker ” utos ay maaaring gamitin.
Ipapakita ng gabay na ito ang:
- Ano ang 'docker commit' Command?
- Paano Gumawa ng Imahe Mula sa isang Docker Container?
- Paano Itakda ang May-akda ng isang Larawan?
- Paano Itakda ang Commit Message ng Imahe?
- Konklusyon
Ano ang 'docker commit' Command?
Ang ' gumawa ng docker Ang command ay isa sa mga command line utility ng Docker na ginagamit upang i-commit ang mga pagbabago at setting ng container sa imahe ng Docker. Ginagamit din ito upang lumikha ng backup ng container kapag kinakailangan ng mga user na i-declutter ang Docker sa pamamagitan ng pag-alis ng mga container ng Docker. Gayunpaman, kasama lang sa docker commit command ang container file at mga pagbabago sa configuration sa Docker image, hinding-hindi nito ise-save ang data ng volume na naka-mount sa container.
Syntax
gumawa ng docker < MGA OPSYON > < Pangalan ng lalagyan / Container-ID > < Pangalan ng Larawan >
Mga pagpipilian
Ang mga sumusunod na opsyon ay ginagamit sa ' gumawa ng docker ” utos upang lumikha ng isang imahe mula sa isang lalagyan sa iba't ibang paraan:
< malakas > Pagpipilian malakas > td >< td >< malakas > Paglalarawan malakas > td >
tr >
< tr >
< td >< malakas > -a, --may-akda malakas > td >
< td > Ginagamit ito upang tukuyin ang pangalan ng may-akda na gumagawa ng mga pagbabago sa container sa ang imahe. td >
tr >
< tr >
< td >< malakas > -c, --pagbabago malakas > td >
< td > Idagdag ang mga tagubilin sa Dockerfile upang gawin ang mga pagbabago sa isang imahe. td >
tr >
< tr >
< td >< malakas > -m, --mensahe malakas > td >
< td > Idagdag ang commit na mensahe o komento habang pagbuo ng isang imahe mula sa lalagyan. td >
tr >
< tr >
< td >< malakas > -p, --pause malakas > td >
< td > Habang ginagawa ang container, bilang default, ihihinto o ipo-pause ang container. Para pigilan ang container sa pag-pause, ang “ < malakas > --pause= mali malakas > 'Ginagamit ang opsyon.
Paano Gumawa ng Imahe Mula sa isang Docker Container?
Kapag ang user ay gumawa ng mga pagbabago sa Docker container nang direkta sa pamamagitan ng container shell o hindi interactive, hindi binabago ng mga pagbabagong ito ang container snapshot. Upang mag-save o gumawa ng mga pagbabago, ang user ay makakabuo ng bagong larawan mula sa lalagyan gamit ang ' gumawa ng docker ” utos. Nakakatulong din ito sa paggawa ng backup ng container.
Upang lumikha ng isang imahe sa pamamagitan ng lalagyan ng Docker, dumaan sa sumusunod na paglalarawan.
Hakbang 1: Gumawa ng Dockerfile
Una, gumawa ng bagong file na pinangalanang ' Dockerfile ” at huwag magdagdag ng anumang extension ng file na may pangalan ng file. Pagkatapos nito, i-paste ang mga sumusunod na command sa 'Dockerfile'
MULA nginx:pinakabagoKopyahin ang index.html / usr / ibahagi / nginx / html / index.html
PASUKAN [ 'nginx' , '-g' , 'demonyo off;' ]
Dito, ang ' MULA SA 'Ang command ay ginagamit upang tukuyin ang base ng lalagyan na imahe, ang ' KOPYA Kinokopya ng command ng ” ang file ng program sa tinukoy na landas ng lalagyan, at ang “ PASUKAN Ang command na ” ay nagtatakda ng mga default na executable ng container.
Hakbang 2: Gumawa ng File ng Programa
Susunod, lumikha ng isa pang file ' index.html ” at idagdag ang sumusunod na HTML code sa file:
< html >< ulo >
< istilo >
katawan {
kulay ng background:rgb ( 9 , 4 , 4 ) ;
}
h1 {
kulay:rgb ( 221 , 219 , 226 ) ;
font-style: italic;
}
istilo >
ulo >
< katawan >
< h1 > Ito ang Unang HTML na pahina h1 >
katawan >
html >
Hakbang 3: Bumuo ng Snapshot ng Container
Ngayon, bumuo ng snapshot ng container mula sa Dockerfile gamit ang command sa ibaba. Dito, ang ' -t ' ang opsyon ay ginagamit upang itakda ang pangalan ng snapshot:
pagtatayo ng docker -t demo-img .
Hakbang 4: Patakbuhin ang Snapshot upang Simulan ang Container
Susunod, simulan ang lalagyan sa pamamagitan ng pagsasagawa ng imahe ng lalagyan. Para sa layuning ito, gamitin ang ' docker run
Sa utos sa itaas, ang ' -p 'Ang opsyon ay nagtatakda ng naglalantad na port ng lalagyan,' –pangalan Tinutukoy ng ” ang pangalan ng container at ang “ -d ' pinapatakbo ng opsyon ang lalagyan sa hiwalay na mode:
Pagkatapos isagawa ang lalagyan, mag-navigate sa ' http://localhost:80 ” URL at tingnan kung naa-access ang containerized program sa expose port o hindi:
Ipinapakita ng output sa itaas na matagumpay naming nasimulan ang lalagyan.
Hakbang 5: Gumawa ng Bagong File ng Programa
Minsan, maaaring kailanganin ng mga user na magdagdag ng mga karagdagang functionality sa tumatakbong application. Para sa layuning ito, maaaring kailanganin ng user na gumawa ng mga pagbabago sa file ng programa o maaaring magdagdag ng mga karagdagang file sa application.
Para sa layuning ito, gumawa tayo ng isa pang file na may pangalang ' index1.html ” at i-paste ang sumusunod na code sa file:
< html >< ulo >
< istilo >
katawan {
kulay ng background:rgb ( 106 , 103 , 103 ) ;
}
h1 {
kulay:rgb ( 221 , 219 , 226 ) ;
font-style: italic;
}
istilo >
ulo >
< katawan >
< h1 > Ito ang Pangalawang HTML na pahina h1 >
katawan >
html >
Hakbang 6: Kopyahin ang Bagong File ng Programa sa Container
Para kopyahin ang bagong file sa container path, gamitin ang “ docker cp
Hakbang 7: I-commit ang Mga Pagbabago sa Container sa Bagong Larawan
Pagkatapos gumawa ng mga pagbabago sa isang container, kinakailangan ng mga user na i-commit ang mga pagbabago sa isang bagong larawan ng Docker. Ang larawang ito ay bubuo sa pamamagitan ng isang Docker container. Para sa layuning ito, patakbuhin ang ' docker commit
Tandaan: Gumagawa ng mga pagbabago sa lalagyan ng Docker bago bumuo ng imahe sa pamamagitan ng ' gumawa ng docker ” ang utos ay hindi sapilitan. Maaaring direktang gamitin ng mga user ang 'docker commit' upang bumuo ng backup ng container sa pamamagitan ng paggawa ng larawan.
Hakbang 8: Kumpirmasyon
Upang suriin kung ang imahe ay nilikha o hindi sa pamamagitan ng lalagyan, ilista ang mga imahe ng Docker sa pamamagitan ng paggamit ng ' mga larawan ng docker ” utos:
mga larawan ng dockerAng output sa ibaba ay nagpapakita na matagumpay naming nabuo ang ' bagong-demo-img 'mula sa' demo-cont ” lalagyan:
Tandaan: Upang itulak ang imahe ng Docker sa registry ng Docker hub, maaari ding i-tag ng user ang larawan gamit ang “ tag ng pantalan ” utos:
tag ng pantalan < pangalan ng imahe > < repository-pangalan >>< pangalan ng imahe > : < tag / bersyon >Hakbang 9: Alisin ang Lumang Lalagyan
Ngayon, alisin ang mas lumang lalagyan. Para sa layuning ito, itigil muna ang lalagyan ng Docker gamit ang ' docker stop
Pagkatapos ihinto ang lalagyan, gamitin ang ' docker rm
Hakbang 10: Magpatakbo ng Bagong Container Mula sa Bagong Naka-commit na Larawan
Ngayon, simulan ang bagong instance o Docker container gamit ang bagong nabuong imahe sa pamamagitan ng “ tumakbo sa pantalan ” utos:
tumakbo sa pantalan -p 80 : 80 --pangalan demo-cont -d bagong-demo-img
Ngayon, mag-navigate sa ' localhost:80 ” port at suriin kung gumagana o hindi ang HTML application:
Upang suriin ang bagong kopyang file na ' index1.html ', gamitin ang ' http://localhost/index1.html ” URL:
Ang output sa itaas ay nagpapakita na ang mga ginawang pagbabago ay matagumpay na nai-save sa ' bagong-demo-img ” Docker image at epektibo naming pinatakbo ang binagong container.
Paano Itakda ang May-akda ng isang Larawan?
Ang ' gumawa ng docker Sinusuportahan din ng command ng ” ang iba't ibang mga opsyon upang magdagdag ng karagdagang impormasyon kasama ng mga ginawang pagbabago tulad ng may-akda ng mga bagong pagbabago, commit message, at iba pa.
Upang tukuyin ang may-akda ng larawan na gumagawa ng mga bagong pagbabago, dumaan sa mga ibinigay na hakbang.
Hakbang 1: Itakda ang May-akda ng Larawan
Upang tukuyin ang may-akda ng larawan na gumagawa ng mga pagbabago, gamitin ang ' -a 'o' –may-akda 'opsyon kasama ng' gumawa ng docker ” utos:
gumawa ng docker -a rafia demo-cont new-demo-img
Hakbang 2: Siyasatin ang Larawan
Upang i-verify kung ang may-akda ng larawan ay nakatakda o hindi, siyasatin ang bagong nabuong larawan gamit ang ' sinisiyasat ng docker
Ipinapakita ng output na epektibo naming naitakda ang may-akda ng larawan:
Paano Magtakda ng Commit Message ng Larawan?
Upang itakda ang commit message kasama ang commit na mga pagbabago, gamitin ang ' -m ” opsyon. Para sa paglalarawan, sundin ang mga tagubilin sa ibaba.
Hakbang 1: Itakda ang Commit Message of Image
Upang itakda ang mensahe kasama ng mga nakatuong pagbabago, gamitin ang ' docker commit -m <“message”>
Hakbang 2: Siyasatin ang Larawan
Upang suriin ang commit message, siyasatin ang larawan sa pamamagitan ng “ sinisiyasat ng docker
Sa ilalim ng ' Magkomento ” key, makikita ng user ang commit message gaya ng ipinapakita sa ibaba:
Iyon ay tungkol sa pagbuo ng isang Docker na imahe mula sa isang lalagyan.
Konklusyon
Upang makabuo ng imahe ng Docker mula sa isang container, gawin muna ang mga pagbabago sa container ng Docker. Pagkatapos nito, gamitin ang ' docker commit