Docker ile Yerel Kafka Kurulumu
Geliştirme ve test için bir çalışma alanı sağlayan yerel Kafka kümesini Docker Compose kullanarak hızla kurmayı öğrenin.
Docker ile Yerel Kafka Kurulumu, CoddyKit'te ücretsiz bir Advanced Spring Boot 4: Event-Driven Architecture (Kafka) dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Advanced Spring Boot 4: Event-Driven Architecture (Kafka) öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Advanced Spring Boot 4: Event-Driven Architecture (Kafka) kursu toplamda 4 dersten oluşur.
Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.
Local Kafka: Your Dev Sandbox
When building applications that use Apache Kafka, you'll need a Kafka cluster to connect to. For development and testing, setting up a local cluster is ideal.
It provides a safe, isolated environment where you can experiment without affecting production systems. This lesson will guide you through setting it up easily with Docker.
Docker and Docker Compose Basics
Docker is a platform for developing, shipping, and running applications in containers. Containers are lightweight, portable, and self-sufficient units.
Docker Compose is a tool for defining and running multi-container Docker applications. You use a YAML file to configure your application's services, then create and start them all with a single command.
Essential Kafka Local Components
A minimal Kafka cluster requires two main components to function:
- Zookeeper: This service manages Kafka brokers, handling leader election, configuration, and coordination. Kafka relies on Zookeeper for its operational state.
- Kafka Broker: This is the core server that stores topics, handles message production and consumption, and replicates data. You'll typically run at least one broker.
Defining Your Services with YAML
We'll define our Kafka setup using a docker-compose.yml file. This file tells Docker Compose which services to run, which images to use, and how they should be configured and networked.
Each service in the file represents a container that will be launched. Let's start building it step-by-step.
Zookeeper in Docker Compose
First, let's define the Zookeeper service. We'll use a standard Zookeeper image and expose its default client port.
version: '3.8'
services:
zookeeper:
image: confluentinc/cp-zookeeper:7.5.0
container_name: zookeeper
ports:
- "2181:2181"
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000Here, ports: "2181:2181" maps the container's port 2181 to your host's port 2181.
Kafka Broker in Docker Compose
Next, we add the Kafka broker service. It needs to know how to connect to Zookeeper and also exposes its own ports for clients.
kafka:
image: confluentinc/cp-kafka:7.5.0
container_name: kafka
ports:
- "9092:9092"
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0
depends_on:
- zookeeperdepends_on: zookeeper ensures Zookeeper starts before Kafka.
Your Complete Kafka Setup File
Combining both services, your docker-compose.yml file looks like this:
version: '3.8'
services:
zookeeper:
image: confluentinc/cp-zookeeper:7.5.0
container_name: zookeeper
ports:
- "2181:2181"
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
kafka:
image: confluentinc/cp-kafka:7.5.0
container_name: kafka
ports:
- "9092:9092"
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0
depends_on:
- zookeeperSave this content into a file named docker-compose.yml in an empty directory.
Launching Your Kafka Cluster
Once your docker-compose.yml file is ready, navigate to its directory in your terminal. Then, use the following command to start your Kafka cluster:
docker-compose up -dup: Builds, (re)creates, starts, and attaches to containers for a service.-d: Runs containers in detached mode (in the background).
Docker will download images (if not present) and start Zookeeper, then Kafka.
Confirming Kafka is Running
After running docker-compose up -d, you can check if your services are running correctly:
docker ps: Lists all running Docker containers. You should seezookeeperandkafka.docker logs kafka: Shows the logs for the Kafka container. Look for messages indicating it started successfully, like "started (kafka.server.KafkaServer)".
To stop and remove the containers, use docker-compose down.
Docker Compose Command Check
You've just created a docker-compose.yml file and want to start your Kafka cluster in the background. Which command should you use?
Recap: Local Kafka with Docker
Congratulations! You've learned how to set up a local Kafka cluster using Docker Compose. Here's a quick summary:
- Local Kafka provides an isolated dev environment.
- Docker Compose uses a
docker-compose.ymlfile to define multi-container apps. - A minimal Kafka setup requires Zookeeper and a Kafka Broker.
- The
docker-compose.ymlspecifies images, ports, and environment variables. - Use
docker-compose up -dto start anddocker-compose downto stop your cluster.
Now you have a sandbox to build your Spring Boot Kafka applications!
Sıkça Sorulan Sorular
“Docker ile Yerel Kafka Kurulumu” dersi ücretsiz mi?
Evet — “Docker ile Yerel Kafka Kurulumu” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Advanced Spring Boot 4: Event-Driven Architecture (Kafka) kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Advanced Spring Boot 4: Event-Driven Architecture (Kafka) kursu toplamda 4 dersten oluşur.
“Docker ile Yerel Kafka Kurulumu” dersinde ne öğreneceğim?
Geliştirme ve test için bir çalışma alanı sağlayan yerel Kafka kümesini Docker Compose kullanarak hızla kurmayı öğrenin. Advanced Spring Boot 4: Event-Driven Architecture (Kafka) ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Advanced Spring Boot 4: Event-Driven Architecture (Kafka) öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Advanced Spring Boot 4: Event-Driven Architecture (Kafka), başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Docker ile Yerel Kafka Kurulumu” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Advanced Spring Boot 4: Event-Driven Architecture (Kafka) dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Advanced Spring Boot 4: Event-Driven Architecture (Kafka) dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Kafka Mimarısine Genel Bakış
- Konular, Bölümler ve Ofsetler
- Docker ile Yerel Kafka Kurulumu
- Tüketici Grupları ve Yeniden Dengeleme