Skip to content

lincon-ac/projeto-devsecops

Repository files navigation

DevSecOps Ubuntu - Ambiente Completo

Este repositório contém um ambiente DevSecOps completo otimizado para sistemas Ubuntu/Linux com Quarkus, Kubernetes (Kind), Prometheus, Grafana e Docker Registry local.

🚀 Características Principais

  • Aplicação Quarkus com Java 21
  • Kubernetes local com Kind
  • Monitoramento completo com Prometheus + Grafana
  • Registry Docker local em 127.0.0.1:5003
  • Scripts automatizados para Ubuntu
  • Documentação completa em português

�� Documentação

📖 Guias Principais

🔧 Arquivos de Configuração

  • Makefile - Comandos automatizados para Ubuntu
  • repo/Dockerfile - Dockerfile otimizado para Ubuntu
  • kind/cluster-config.yml - Configuração do cluster Kubernetes
  • scripts/ - Scripts utilitários para Ubuntu

⚡ Quick Start

# 1. Verificar dependências
bash scripts/check-dependencies.sh

# 2. Criar ambiente completo
make setup

# 3. Desenvolver aplicação
make dev

# 4. Acessar serviços
# - Aplicação: http://127.0.0.1:8080/hello
# - Prometheus: http://127.0.0.1:9090
# - Grafana: http://127.0.0.1:3000 (admin/admin)

🛠️ Comandos Disponíveis

# Ambiente
make setup           # Criar ambiente completo
make dev             # Modo desenvolvimento
make monitoring      # Apenas monitoramento
make clean           # Limpeza básica
make reset           # Reset completo

# Limpeza de Cache
make clear-cache     # Limpeza automatizada
make clean-light     # Limpeza básica
make clean-heavy     # Limpeza profunda

# Utilitários
make help            # Mostrar ajuda
make status          # Status dos serviços
make logs            # Ver logs

�� Resolução de Problemas

Erro "ErrImageNeverPull"

# Solução automática
bash scripts/clear-registry-cache.sh

# Ou via Makefile
make clear-cache

Limpeza Completa

make reset  # Remove tudo e recria ambiente

📊 Arquitetura

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   Quarkus App   │    │   Prometheus    │    │     Grafana     │
│   Port: 8080    │◄───┤   Port: 9090    │◄───┤   Port: 3000    │
└─────────────────┘    └─────────────────┘    └─────────────────┘
         │                       │                       │
         └───────────────────────┼───────────────────────┘
                                 │
                    ┌─────────────────┐
                    │ Kind Kubernetes │
                    │    Cluster      │
                    └─────────────────┘
                                 │
                    ┌─────────────────┐
                    │ Docker Registry │
                    │ 127.0.0.1:5003  │
                    └─────────────────┘

🎯 Recursos Incluídos

Aplicação

  • ✅ Quarkus com Java 21
  • ✅ Health checks configurados
  • ✅ Métricas Prometheus integradas
  • ✅ Docker registry local

Monitoramento

  • ✅ Prometheus com service discovery
  • ✅ Grafana com dashboards pré-configurados
  • ✅ Métricas JVM e aplicação
  • ✅ Health monitoring

DevOps

  • ✅ Kubernetes local com Kind
  • ✅ Namespace isolation (dev/monitoring)
  • ✅ Port-forwarding automatizado
  • ✅ Scripts de automação

🔒 Segurança

  • Registry local seguro
  • Namespace isolation
  • Health checks configurados
  • Logs centralizados

📝 Requisitos

  • Ubuntu 20.04+ / Debian 11+
  • Docker 20.10+
  • Java 21
  • kubectl
  • Kind

🤝 Contribuição

  1. Fork o projeto
  2. Crie uma branch para sua feature
  3. Commit suas mudanças
  4. Push para a branch
  5. Abra um Pull Request

📄 Licença

Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.


Desenvolvido com ❤️ para a comunidade DevSecOps Ubuntu

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published