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

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more