Konteynerden Docker Görüntüsü Nasıl Oluşturulur

Konteynerden Docker Goruntusu Nasil Olusturulur



Docker görüntüleri, Docker platformunun temel bileşenlerinden biridir ve konteyner içinde Docker uygulamalarının oluşturulmasında, dağıtılmasında ve gönderilmesinde önemli bir rol oynar. Docker görüntüleri, kapsayıcıya uygulamanın nasıl kapsayıcıya alınacağı ve dağıtılacağı konusunda talimat veren kapsayıcıların şablonları veya anlık görüntüleridir. Uygulamayı kapsayıcı hale getirmek için Docker Hub kayıt defterinde binlerce resmi görüntü mevcuttur. Ancak kullanıcılar ihtiyaçları doğrultusunda bu görselleri Dockerfile ve Docker compose servisini kullanarak da oluşturabilmektedirler.

Bazen kullanıcılar kapsayıcı ve yapılandırma ayarlarında değişiklik yapar ancak bu değişiklikler Docker görüntüsüne kaydedilmez. Konteyner değişikliklerini imaja kaydetmek veya konteyner yedeğini oluşturmak için kullanıcıların konteynerden yeni bir imaj oluşturması gerekir. Bu özel amaç için, “ liman işçisi taahhüdü ” komutu kullanılabilir.

Bu kılavuz şunları gösterecektir:







“Docker commit” Komutu nedir?

liman işçisi taahhüdü ” komutu, konteyner değişikliklerini ve ayarlarını Docker görüntüsüne işlemek için kullanılan Docker'ın komut satırı yardımcı programlarından biridir. Ayrıca, kullanıcıların Docker konteynerlerini kaldırarak Docker'ı düzenlemeleri gerektiğinde konteyner yedeğini oluşturmak için de kullanılır. Ancak docker commit komutu yalnızca Docker görüntüsündeki konteyner dosyasını ve konfigürasyon değişikliklerini içerir, konteynere bağlanan birimin verilerini hiçbir zaman kaydetmez.



Sözdizimi



liman işçisi taahhüdü < SEÇENEKLER > < Konteyner adı / Konteyner Kimliği > < Resim Adı >

Seçenekler





Aşağıdaki seçenekler “ ile birlikte kullanılır. liman işçisi taahhüdü ” komutu, bir kaptan farklı şekillerde bir görüntü oluşturma komutu:

< güçlü > Seçenek güçlü > td >
< td >< güçlü > Tanım güçlü > td >
TR >
< TR >
< td >< güçlü > -A, --yazar güçlü > td >
< td > Kabın değişikliklerini gerçekleştiren yazarın adını belirtmek için kullanılır içinde görüntü. td >
TR >
< TR >
< td >< güçlü > -C, --değiştirmek güçlü > td >
< td > Değişiklikleri uygulamak için Dockerfile talimatlarını ekleyin içinde bir şekil. td >
TR >
< TR >
< td >< güçlü > -m, --mesaj güçlü > td >
< td > Taahhüt mesajını veya yorumunu ekleyin sırasında kapsayıcıdan bir görüntü oluşturma. td >
TR >
< TR >
< td >< güçlü > -p, --pause güçlü > td >
< td > Konteyneri taahhüt ederken varsayılan olarak konteyner durdurulacak veya duraklatılacaktır. Kapsayıcının duraklamasını durdurmak için “ < güçlü > --pause= YANLIŞ güçlü > ” seçeneği kullanılmaktadır.

Docker Container'dan Görüntü Nasıl Oluşturulur?

Kullanıcı Docker konteynerinde doğrudan konteyner kabuğu aracılığıyla veya etkileşimli olmayan bir şekilde değişiklik yaptığında, bu değişiklikler konteyner anlık görüntüsünü değiştirmez. Değişiklikleri kaydetmek veya işlemek için kullanıcı, “ liman işçisi taahhüdü ' emretmek. Bu aynı zamanda konteynerin yedeğini oluşturmak için de faydalıdır.



Docker kapsayıcısı aracılığıyla görüntü oluşturmak için aşağıdaki çizimi inceleyin.

Adım 1: Dockerfile'ı oluşturun

Öncelikle “adlı yeni bir dosya oluşturun. Docker dosyası ” ve dosya adını taşıyan herhangi bir dosya uzantısı eklemeyin. Daha sonra aşağıdaki komutları “Dockerfile” içerisine yapıştırın.

Nginx'ten:en son

index.html'yi KOPYALA / usr / paylaşmak / Nginx / HTML / indeks.html

GİRİŞ NOKTASI [ 'nginx' , '-G' , 'cin kapalı;' ]

Burada, “ İTİBAREN ” komutu konteyner taban görüntüsünü tanımlamak için kullanılır, “ KOPYALA ” komutu, program dosyasını konteynerin belirtilen yoluna kopyalar ve “ GİRİŞ NOKTASI ” komutu, kabın varsayılan yürütülebilir dosyalarını ayarlar.

Adım 2: Program Dosyasını Oluşturun

Sonra başka bir dosya oluşturun “ indeks.html ”ve aşağıdaki HTML kodunu dosyaya ekleyin:

< HTML >

< KAFA >

< stil >

vücut {

arka plan rengi:rgb ( 9 , 4 , 4 ) ;

}

h1 {

renk:rgb ( 221 , 219 , 226 ) ;

yazı tipi stili: italik;

}

stil >

KAFA >

< vücut >

< h1 > Bu İlk HTML sayfasıdır h1 >

vücut >

HTML >

3. Adım: Container'ın Anlık Görüntüsünü Oluşturun

Şimdi aşağıdaki komutu kullanarak Dockerfile’dan konteynerin anlık görüntüsünü oluşturun. Burada, “ -T Anlık görüntünün adını ayarlamak için ” seçeneği kullanılır:

Liman işçisi yapısı -T demo-img .

4. Adım: Kapsayıcıyı Başlatmak için Anlık Görüntüyü Çalıştırın

Daha sonra konteyner görüntüsünü çalıştırarak konteyneri başlatın. Bu amaçla “ liman işçisi çalıştırması ' emretmek:

liman işçisi koşusu -P 80 : 80 --isim demo-devam -D demo-img

Yukarıdaki komutta “ -P ” seçeneği konteynerin açığa çıkan portunu ayarlar, “ -isim ” kapsayıcı adını ve “ -D ” seçeneği, kabı müstakil modda çalıştırır:

Konteyneri çalıştırdıktan sonra “ http://localhost:80 ” URL'sini açın ve kapsayıcıya alınmış programın açık bağlantı noktasında erişilebilir olup olmadığını kontrol edin:

Yukarıdaki çıktı konteyneri başarıyla başlattığımızı gösteriyor.

Adım 5: Yeni Bir Program Dosyası Oluşturun

Bazen kullanıcıların çalışan uygulamaya ek işlevler eklemesi gerekebilir. Bu amaçla kullanıcının program dosyasında değişiklik yapması gerekebilir veya uygulamaya ek dosyalar ekleyebilir.

Bu amaçla “adlı bir dosya daha oluşturalım. indeks1.html ”ve aşağıdaki kodu dosyaya yapıştırın:

< HTML >

< KAFA >

< stil >

vücut {

arka plan rengi:rgb ( 106 , 103 , 103 ) ;

}

h1 {

renk:rgb ( 221 , 219 , 226 ) ;

yazı tipi stili: italik;

}

stil >

KAFA >

< vücut >

< h1 > Bu İkinci HTML sayfasıdır h1 >

vücut >

HTML >

Adım 6: Yeni Program Dosyasını Kapsayıcıya Kopyalayın

Yeni dosyayı konteyner yoluna kopyalamak için “ docker cp : ' emretmek. Buraya kopyaladık “ indeks1.html 'dosyasını' demo-devam ” konteynerin belirtilen yolu:

liman işçisi cp index1.html demo-devam: / usr / paylaşmak / Nginx / HTML / indeks1.html

Adım 7: Kapsayıcı Değişikliklerini Yeni Görüntüde Gerçekleştirin

Bir kapsayıcıda değişiklik yaptıktan sonra kullanıcıların değişiklikleri yeni bir Docker görüntüsüne kaydetmeleri gerekir. Bu görüntü bir Docker kapsayıcısı aracılığıyla oluşturulacaktır. Bu amaçla “ docker commit ' emretmek:

docker commit demo-cont yeni demo-img

Not: Görüntüyü oluşturmadan önce Docker kapsayıcısında değişiklik yapmak “ liman işçisi taahhüdü ” komutu zorunlu değildir. Kullanıcılar, görüntüyü oluşturarak konteynerin yedeğini oluşturmak için doğrudan 'docker commit'i kullanabilirler.

Adım 8: Onay

Görüntünün konteyner aracılığıyla oluşturulup oluşturulmadığını kontrol etmek için Docker görüntülerini “ liman işçisi görselleri ' emretmek:

liman işçisi görselleri

Aşağıdaki çıktı başarıyla oluşturduğumuzu gösteriyor: yeni demo-img ' itibaren ' demo-devam ” konteyner:

Not: Docker görüntüsünü Docker hub kayıt defterine göndermek için kullanıcı görüntüyü ' liman işçisi etiketi ' emretmek:

liman işçisi etiketi < resim adı > < depo adı >>< resim adı > : < etiket / versiyon >

Adım 9: Eski Kabı Çıkarın

Şimdi eski kabı çıkarın. Bunun için öncelikle Docker konteynerini “” komutunu kullanarak durdurun. liman işçisi durağı ' emretmek:

docker stop demo-devam

Kabı durdurduktan sonra “ docker rm ” Docker'dan kaldırmak için komut:

liman işçisi rm demo-devam

Adım 10: Yeni Kaydedilen Görüntüden Yeni Kapsayıcı Çalıştırın

Şimdi yeni oluşturulan görüntüyü kullanarak yeni örneği veya Docker kapsayıcısını ' liman işçisi koşusu ' emretmek:

liman işçisi koşusu -P 80 : 80 --isim demo-devam -D yeni demo-img

Şimdi şuraya gidin: “ yerel ana bilgisayar:80 ” bağlantı noktasını açın ve HTML uygulamasının etkili bir şekilde çalışıp çalışmadığını kontrol edin:

Yeni kopyalanan dosyayı kontrol etmek için “ indeks1.html ”,“ http://localhost/index1.html ” URL'si:

Yukarıdaki çıktı, taahhüt edilen değişikliklerin başarıyla ' yeni demo-img ” Docker imajını oluşturduk ve değiştirilen konteyneri etkin bir şekilde çalıştırdık.

Bir Resmin Yazarı Nasıl Ayarlanır?

liman işçisi taahhüdü ” komutu ayrıca yeni değişikliklerin yazarı, taahhüt mesajı vb. gibi taahhüt edilen değişikliklerin yanı sıra ek bilgiler eklemek için farklı seçenekleri de destekler.

Yeni değişiklikleri gerçekleştiren görüntünün yazarını belirlemek için verilen adımları izleyin.

1. Adım: Resmin Yazarını Ayarlayın

Değişiklikleri yapan görselin yazarını belirtmek için ' -A ' veya ' -yazar ” seçeneği ile birlikte “ liman işçisi taahhüdü ' emretmek:

liman işçisi taahhüdü -A rafia demo-devam yeni-demo-img

2. Adım: Görüntüyü İnceleyin

Görüntünün yazarının ayarlanıp ayarlanmadığını doğrulamak için yeni oluşturulan görüntüyü “ liman işçisi 'yı inceliyor ' emretmek:

liman işçisi yeni demo-img'yi inceliyor

Çıktı, görüntünün yazarını etkili bir şekilde ayarladığımızı gösteriyor:

Görüntünün Teslim Mesajı Nasıl Ayarlanır?

Taahhüt mesajını taahhüt değişiklikleriyle birlikte ayarlamak için “ -M ' seçenek. Örnek olarak aşağıdaki talimatları izleyin.

Adım 1: Görüntünün Teslim Mesajını Ayarlayın

Mesajı taahhüt edilen değişikliklerle birlikte ayarlamak için “ docker commit -m <“mesaj”> ' emretmek:

liman işçisi taahhüdü -A rafya -M 'Bu resim konteyner tarafından oluşturuldu' demo-devam yeni-demo-img

2. Adım: Görüntüyü İnceleyin

Taahhüt mesajını kontrol etmek için görüntüyü “ liman işçisi 'yı inceliyor ' emretmek:

liman işçisi yeni demo-img'yi inceliyor

Altında ' Yorum ” tuşuna bastığınızda, kullanıcı taahhüt mesajını aşağıda gösterildiği gibi görebilir:

Bu tamamen bir konteynerden Docker görüntüsü oluşturmakla ilgilidir.

Çözüm

Bir kapsayıcıdan Docker görüntüsü oluşturmak için öncelikle değişiklikleri Docker kapsayıcısında yapın. Bundan sonra “ docker commit Görüntüyü kaptan oluşturmak için ” komutu. Şimdi eski kapsayıcıyı kaldırın ve yeni örneği yeni oluşturulan görüntü aracılığıyla başlatın. Kullanıcılar ayrıca “” seçeneğini kullanarak görüntünün yazar adını da ayarlayabilirler. -A ”seçeneğini seçin ve mesajı“ kullanarak taahhüt edin -M ' seçenek. Bu blog, Docker kapsayıcısından görüntülerin nasıl oluşturulacağını gösterdi.