Skip to content

mateusalxd/teste-kafka

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Este projeto tem como objetivo realizar um teste simples com Kafka.

Como usar

# --> para montar sua própria imagem

# considerando que o diretório atual seja a raiz do projeto
cd kafka
docker build -t mateusalxd/kafka:2.13-2.6.0-1.8 .

# --> se preferir utilizar a imagem já pronta

docker pull mateusalxd/kafka:2.13-2.6.0-1.8

# --* 2.13 Scala, 2.6.0 Kafka e 1.8 Java

Com a imagem disponível, agora é nececessário executá-la e em seguida acessá-la para criar os tópicos.

# monta o volume
docker volume create dados-kafka

# --rm pode ser desconsiderado caso queira
docker run --rm -d --name kafka-server -p 9092:9092 -v dados-kafka:/app/data mateusalxd/kafka:2.13-2.6.0-1.8

# considerando que o nome do container foi mantido
docker exec -it $(docker ps -q -f name=kafka-server) /bin/bash

# criação dos tópicos
./kafka/bin/kafka-topics.sh --create --topic NOVA_ORDEM --bootstrap-server localhost:9092

./kafka/bin/kafka-topics.sh --create --topic ESTOQUE_RESERVADO --partitions 3 --bootstrap-server localhost:9092

./kafka/bin/kafka-topics.sh --create --topic ESTOQUE_INSUFICIENTE --bootstrap-server localhost:9092

# para sair do container
exit

Neste exemplo foi utilizado um banco de dados MySQL, então agora é necessário subir um container e depois popular alguns dados.

# já configurei uma variável de ambiente chamada MYSQL_ROOT_PASSWORD

docker run --name mysql-server -e MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} -e MYSQL_DATABASE=projeto -p 3306:3306 -d mysql

# acessando o MySQL para popular os dados
# considerando que o nome do container foi mantido
docker exec -it $(docker ps -q -f name=mysql-server) /bin/bash

# nessa parte será solicitada a senha
mysql -u root -p

use projeto;

# copie o conteúdo do arquivo mysql/estrutura.sql e cole no terminal

# para sair do container
exit
exit

Alguns outros comandos utilitários.

# acessar os logs do Kafka
docker logs -f $(docker ps -q -f name=kafka-server)

# parar o Kafka
docker stop $(docker ps -q -f name=kafka-server)

# parar o MySQL
docker stop $(docker ps -q -f name=mysql-server)

About

Teste com Kafka

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published