DEV Community

MustafaSamedYeyin
MustafaSamedYeyin

Posted on

Docker Notlarım :

Merhaba arkadaşlar,
Docker öğrenirken aldığım notları paylaşmak istedim, temelleri konu alan bir yazı olacak bu sebeple.

Docker nedir ?

Öncelikle container nedir bunu tanımlamak lazım sebebi ise aslından docker, uygulamarı(programları) containerlar halinde tutmamızı sağlayan open source bir teknolojidir.

Şimdi container ne demek ?

Container, uygulamarı ve ya programları configurasyon ve bağımlıklıklarıyla(dependencies) izole bir şekilde tutan yapıya denir.

Container'lar, os(operating system) bilgisi içermezler.
Aşağıdaki resimde de görüleceği üzere container'lar os level'inin üzerinde çalışır.

Image description

Peki docker'ın amacı uygulamaları izole bir şekilde tutan container'lar üretmekse bir container nasıl oluşturulur ?

Bunun cevabını verebilmek için bazı terimleri açıklamam lazım.

Öncelikle container'lar çalışan yapılardır ve bu çalışan yapıların kalıplarına ise images diyoruz yani bir container çalışan bir image'dir diyebiliriz. Veya images'lere container'ların template'leri/kalıpları diyebiliriz.

Yani container'lar çalışan image'lardır.

Ek bilgi :
Docker Registry image'lerin tutulduğu bir portal olarak düşünebilirisiniz, docker hub gibi örneğin. Git ve github ile benzetme yapıcak olursak : git repolarına-images ve Docker Registry-github ile eşleşme yapılabilir.

Not : Bu serinin bir sonraki yazısında bir dotnet projesinin nasıl Dockerfile yaratılır, image yaratılıp daha sonra bu image'den bir container nasıl ayağı kaldırılır göstereceğim.

Kısaca genel yapıya bakalım :

Bir image nasıl yaratılır ?

öncelikle projenin bulunduğu dizinde bir Dockerfile yaratılır.

docker image

komutuyla image yaratılır komut hakkında yardım almak için.

docker image --help

yazabilirsiniz.

Docker container nasıl ayağı kaldırılır.

aşağıdaki komu ile ile bir container, verilecek olan spesifik image template ile ayağı kaldırılır.

docker run

komut hakkında yardım almak için :

docker run --help

yazabilirsiniz.

Bir sonraki yazımda default bir dotnet projesi üzerinden, docker image nasıl yaratılır ve container'ı nasıl bu image template'i üzerinden ayağı kaldırılabileceğini dair örnek vereceğim.

Kaynakça :
knowledgehut
ibm

Top comments (0)