CodeBlanks Logo Icon CodeBlanks

Image ve container

Image ile container arasındaki ilişkiyi öğrenirsin.

Image ve container

Image, uygulamanın salt okunur şablonudur: dosya sistemi, kütüphaneler ve başlangıç komutu. Container ise o image'ın çalışan bir örneğidir. Bir sınıf ile nesneleri gibi düşünebilirsin: tek bir nginx image'ından istediğin kadar container başlatabilirsin.

docker run -d --name web1 nginx
docker run -d --name web2 nginx    # aynı image, iki ayrı container

Yazılabilir katman

Container başladığında image'ın üstüne ince bir yazılabilir katman eklenir. Container içinde oluşturulan dosyalar bu katmana yazılır ve container silinince kaybolur; image ise hiç değişmez. Kalıcı veri için volume kullanılır (ileride göreceksin).

docker run --name deneme alpine touch /tmp/not.txt
docker rm deneme          # /tmp/not.txt de silindi
docker run alpine ls /tmp # image hâlâ temiz: boş

Uygulama Aynı image'dan iki container

nginx image'ından arka planda (-d) çalışan, adları web1 ve web2 olan iki container başlatan iki komutu alt alta yaz.

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
docker run -d --name web1 nginx
docker run -d --name web2 nginx

Beklenen çıktı

3f2a9c1b7e44
8d1e0f6a2b93

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Bir image'dan aynı anda kaç container çalıştırılabilir?

  • Yalnızca bir
  • En fazla iki
  • Hiç; önce kopyalanmalı
  • İstendiği kadar Doğru cevap

Açıklama: Image salt okunurdur; her container üstüne kendi yazılabilir katmanını ekler.

2 Container'a bir isim ver.

Soru
docker run -d ____ web1 nginx
Cevap
docker run -d --name web1 nginx

Açıklama: --name, container'a okunabilir bir ad verir.

3 Eşleştir.

Kavram Anlamı
image Salt okunur şablon
container Çalışan örnek
yazılabilir katman Container silinince kaybolur
volume Kalıcı veri

Başlangıç bölümündeki tüm dersler