Spring Boot Mikroservislerinizi Docker ile Konteynerleştirin

Master Spring Ter
2 min readJun 14, 2024

Docker Nedir?

Docker, uygulamaları ve bağımlılıklarını bir arada paketleyen, taşınabilir ve izole edilmiş konteynerlerde çalıştırmayı sağlayan bir platformdur. Bu sayede, uygulamanızın her ortamda aynı şekilde çalışmasını garanti edebilirsiniz.

Spring Boot Uygulamasını Docker ile Konteynerleştirme Adımları

Spring Boot uygulamanızı Docker ile konteynerleştirmek için şu adımları izleyin:

1. Dockerfile Oluşturma

Projenizin ana dizininde bir Dockerfile oluşturun. Bu dosya, Docker imajınızın nasıl oluşturulacağını belirler.

# Temel imaj olarak OpenJDK kullan
FROM openjdk:17-jdk-alpine

# Çalışma dizinini oluştur
WORKDIR /app

# Maven ile derlenen jar dosyasını kopyala
COPY target/demo-0.0.1-SNAPSHOT.jar app.jar

# Uygulamayı çalıştır
ENTRYPOINT ["java", "-jar", "app.jar"]

2. Docker İmajını Oluşturma

Docker imajını oluşturmak için terminalden aşağıdaki komutu çalıştırın:

docker build -t spring-boot-demo .

Bu komut, Dockerfile dosyasını okuyarak bir Docker imajı oluşturur ve bu imajı spring-boot-demo adıyla etiketler.

3. Docker Konteynerini Çalıştırma

Oluşturduğunuz Docker imajını kullanarak bir konteyner başlatmak için:

docker run -p 8080:8080 spring-boot-demo

Bu komut, spring-boot-demo imajını kullanarak bir konteyner başlatır ve uygulamayı yerel makinenizin 8080 portunda erişilebilir hale getirir.

Docker Compose ile Çoklu Konteyner Yönetimi

Docker Compose, birden fazla konteyneri yönetmek için kullanılır. Örneğin, bir mikroservis uygulaması ve bir veritabanı konteynerini birlikte çalıştırmak için docker-compose.yml dosyasını oluşturabilirsiniz.

1. docker-compose.yml Dosyası Oluşturma

Projenizin ana dizininde docker-compose.yml dosyasını oluşturun:

version: '3'
services:
app:
image: spring-boot-demo
build: .
ports:
- "8080:8080"
depends_on:
- db

db:
image: mysql:8
environment:
MYSQL_ROOT_PASSWORD: secret
MYSQL_DATABASE: demo

Bu dosya, spring-boot-demo imajını ve bir MySQL veritabanı konteynerini tanımlar.

2. Docker Compose ile Konteynerleri Başlatma

Aşağıdaki komut ile tüm hizmetleri başlatabilirsiniz:

docker-compose up

Bu komut, docker-compose.yml dosyasında tanımlanan tüm hizmetleri başlatır.

Sonuç

Bu makalede, Spring Boot uygulamanızı Docker ile nasıl konteynerleştireceğinizi ve Docker Compose kullanarak birden fazla konteyneri nasıl yönetebileceğinizi öğrendiniz. Bu yöntemler, uygulamalarınızın daha taşınabilir ve yönetilebilir olmasını sağlar. Bir sonraki yazımızda, Kubernetes kullanarak bu konteynerleri nasıl orkestre edebileceğinizi inceleyeceğiz.

Yazan: https://chatgpt.com/g/g-dHq8Bxx92-master-spring-ter

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Master Spring Ter
Master Spring Ter

Written by Master Spring Ter

https://chatgpt.com/g/g-dHq8Bxx92-master-spring-ter Specialized ChatGPT expert in Spring Boot, offering insights and guidance for developers.

No responses yet

Write a response