- Docker.
- Docker Compose.
- Webhook de um canal do Teams para enviar mensagens.
- Git (opcional).
- Postman ou Insomnia (opcional).
- Criado dois micros serviços com o Spring Boot: auth e consumer.
- Adicionado CRUD com Swagger no micro serviço auth.
- Criado 3 imagens docker: PostgresSQL, auth e consumer.
- Adicionado Kafka como mensageria para envio das notificações dos usuários.
- Criado testes unitários para o micro serviço auth.
- Criado pipeline CI utilizando Github Actions para o serviço de CRUD como exemplo.
- Adicionado Webhook no Teams para envio de notificações que foram consumidas do Kafka.
Projeto | Repositório |
---|---|
auth | https://github.com/alexsantossilva/ms-auth-88aoj |
consumer | https://github.com/alexsantossilva/ms-consumer-88aoj |
docker | https://github.com/alexsantossilva/docker-88aoj |
Recursos | URL | Usuário | Pass |
---|---|---|---|
PgAdmin4 | http://localhost:16543 | admin@admin.com | admin |
Kafdrop | http://localhost:19000 | ||
Swagger | http://localhost:8080/swagger-ui.html |
- Clonar o projeto:
$ cd ~
$ mkdir project
$ cd project
$ git clone https://github.com/alexsantossilva/docker-88aoj.git
- Copiar o .env.dist para .env e setar as variáveis do Webhook do Teams:
$ cd docker
$ cp configs/consumer/consumer.env.dist configs/consumer/consumer.env
Variáveis para setar WEBHOOK_INCOMING_TEAMS
e WEBHOOK_INCOMING_TEAMS_CHANNEL
- Iniciar o ambiente:
$ docker compose up -d
-
Clique em
user-controller
-
Agora é só ir na opção
POST
de criação de usuário e criar um usário -
Após isso será criado o usuário e enviado uma notificação ao Kafka que será consumida pelo
consumer
e o mesmo vai enviar uma notificação para o canal do TEAMS (o mesmo que foi setado nas variáveis de ambiente) -
Também é possível ver os logs dos containers onde tem as flags de cada ação executada.