Docker Nedir? En Önemli Docker Komutları ve Kullanım Rehberi

Docker, uygulamaları container (konteyner) adı verilen izole ortamlarda çalıştırmayı sağlayan modern bir platformdur. Bu rehberde Docker nedir, Docker nasıl kurulur (Ubuntu) ve geliştiricilerin en sık kullandığı Docker komutlarını adım adım ele alıyoruz.


Docker Nedir?

Docker, uygulamaları ve bağımlılıklarını birlikte paketleyerek farklı ortamlarda (development, test, production) aynı şekilde çalıştırılmasını sağlayan açık kaynaklı bir container platformudur.

Docker container mimarisi
Docker container mimarisi

Docker sayesinde:

  • Ortam bağımlılığı ortadan kalkar
  • CI/CD süreçleri hızlanır
  • Uygulama taşınabilir hale gelir
  • Kaynak kullanımı optimize edilir

Docker’ın Temel Bileşenleri

  • Image: Container oluşturmak için kullanılan şablon
  • Container: Çalışan bir image örneği
  • Layer: Image katmanları
  • Registry: Image saklama alanı (Docker Hub)
  • Repository: Image sürümleri

Docker Nasıl Kurulur? (Ubuntu 22.04 / 20.04)

Resmi Docker dokümantasyonu: Docker Engine Ubuntu Kurulumu

1) Eski Sürümleri Temizle

sudo apt remove docker docker-engine docker.io containerd runc

2) Gerekli Paketleri Kur

sudo apt update
sudo apt install ca-certificates curl gnupg

3) Docker GPG Anahtarını Ekle

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

4) Docker Repository Ekle

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
  https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

5) Docker Kurulumu

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io

6) Kurulum Testi

sudo docker run hello-world
Docker hello world testi
Docker kurulumu sonrası hello-world testi

Docker Compose Kurulumu

Docker Compose dokümantasyonu: Docker Compose Resmi Dokümantasyon

sudo apt install docker-compose-plugin
Kontrol:
docker compose version

En Önemli Docker Komutları

Container İşlemleri

docker run -d nginx
docker ps
docker stop [container_id]
docker exec -it [container_id] bash

Image İşlemleri

docker pull nginx
docker images
docker rmi nginx

Temizlik İşlemleri

docker system prune
docker container prune
docker image prune

Dockerfile Örneği (Spring Boot)

FROM eclipse-temurin:17-jdk-alpine
WORKDIR /app
COPY target/app.jar app.jar
ENTRYPOINT ["java","-jar","app.jar"]

Spring Boot projenizi dockerize etmek için detaylı rehber: Dockerfile ile Proje Dockerize Etme


Docker Kullanırken Dikkat Edilmesi Gerekenler

  • Alpine tabanlı image kullanın
  • Multi-stage build tercih edin
  • Container içinde root çalıştırmayın
  • Production’da healthcheck ekleyin

Sonuç

Docker, modern yazılım geliştirme ve DevOps süreçlerinde vazgeçilmez bir araçtır. Doğru kurulum ve doğru kullanım ile hem geliştirme hem üretim ortamında büyük avantaj sağlar.

Kubernetes ortamına taşıma rehberi için: Dockerize Ederek Kubernetes Ortamına Taşıma

Latest Software Developers - Yazılım Blog Yazarı Profil Resmi

Yazar

LatestSoftwareDevelopers

Blog where the most up-to-date software is followed. (En güncel yazılımların takip edildiği blog sitesi)

Devops ile ilgili yorumlar

Yorum Paylaş

EMail Zorunlu alanlar * *