Dockerfile ile Proje Dockerize Etme ve Kubernetes Ortamına Aktarma
Bugünkü yazımızda, projelerinizi Dockerize ederek Kubernetes ortamına nasıl aktaracağınızı adım adım anlatacağız. Projenizi kodladınız ve her şey hazır, peki ya sonraki adımlar? İşte burada Docker ve Kubernetes devreye giriyor ve tam anlamıyla bir challenge başlıyor! ߚ€
Dockerize Süreci: Adım Adım Rehber
Adım 1: Dockerfile Oluşturma
Dockerfile, bir Docker imajının nasıl oluşturulacağını belirten metin dosyasıdır. İçerisinde imajınızı yapılandırmak için gereken komutlar yer alır.
Basit bir Java uygulaması için Dockerfile örneği:
# Temel imajı belirleme
FROM openjdk:11
# Çalışma dizinini belirleme
WORKDIR /app
# Bağımlılıkları yükleme ve dosyaları kopyalama
COPY . /app
# Çalıştırılabilir komutu belirleme
CMD ["java", "-jar", "uygulama.jar"]
Adım 2: Docker Build ve İmaj Oluşturma
Dockerfile’ınızı kullanarak bir imaj oluşturmak için terminalde şu komutu çalıştırın:
docker build -t benim-projem:1.0 .
-t: İmajınıza isim ve etiket (tag) verir.
.: Dockerfile’ın bulunduğu dizini belirtir.
Oluşturulan imajı kontrol etmek için:
docker images
Adım 3: Docker Registry’e İmaj Yükleme
İmajınızı Docker Hub’a ya da özel bir Docker Registry’e yüklemek için şu adımları takip edin:
Docker Hub’a giriş yapın:
docker login
İmajı yüklemek için:
docker tag benim-projem:1.0 kullanici_adi/benim-projem:1.0
docker push kullanici_adi/benim-projem:1.0
Adım 4: Kubernetes YAML Dosyası Oluşturma
Kubernetes’e imajınızı deploy etmek için bir deployment.yaml dosyası oluşturun:apiVersion: apps/v1
kind: Deployment
metadata:
name: benim-projem-deployment
spec:
replicas: 3
selector:
matchLabels:
app: benim-projem
template:
metadata:
labels:
app: benim-projem
spec:
containers:
- name: benim-projem
image: kullanici_adi/benim-projem:1.0
ports:
- containerPort: 8080
Adım 5: Kubernetes Cluster’a Erişim ve Deploy
Daha önce oluşturulmuş Kubernetes cluster’ınıza bağlanarak şu komutla deployment’ı yükleyin:
kubectl apply -f deployment.yaml
Pod’larınızın çalışıp çalışmadığını görmek için:
kubectl get pods
Servis oluşturup erişim sağlamak için:
kubectl expose deployment benim-projem-deployment --type=LoadBalancer --port=80 --target-port=8080
Sonuç
Bu rehberde, projenizi Dockerize etmek ve Kubernetes ortamına aktarmak için gerekli adımları paylaştık. Dockerfile oluşturma, imaj oluşturma, Docker Registry’e yükleme ve Kubernetes’e deploy süreçlerini adım adım öğrendik.
Şimdiden herkese sağlıklı, mutlu, neşeli günler dilerim.