Este projeto foi desenvolvido como parte da Imersão Cloud DevOps, evolução do repositório api-escolar-fastapi-docker, com foco em práticas modernas de DevOps como Integração Contínua (CI) e Entrega Contínua (CD).
- Automatizar o ciclo de vida da aplicação com GitHub Actions
- Construir imagens Docker com boas práticas (sem usar
latest) - Utilizar Docker Compose com volumes persistentes
- Organizar o projeto com workflows no padrão
.github/workflows - Integrar práticas recomendadas com apoio de IA
- FastAPI
- Docker & Docker Compose
- GitHub Actions
- CI/CD com pipelines
- Volumes persistentes
- Boas práticas orientadas
- .github/workflows/main.yml
- Extensão Gemini Code Assist (Google AI)
Utilizei a Extensão Gemini Code Assist para:
- Sugerir boas práticas no
Dockerfile - Auxiliar na criação do
docker-compose.yml - Gerar partes do workflow
.github/workflows/main.yml - Validar variáveis de ambiente e organização da pipeline
- Criação de uma aplicação containerizada com Docker-compose
- Evitar o uso da imagem
:latestpara garantir consistência e previsibilidade - Pipeline automatizada com GitHub Actions para:
- Build da imagem Docker
- Execução de testes automatizados
- Deploy automatizado (simulado ou real)
- Estrutura
.github/workflowsbem definida e comentada
Workflow automatizado para:
- 🔨 Build da imagem
- ✅ Validação e testes (mock)
- 🚀 Deploy (simulado)
- 🔐 Uso de secrets e variáveis
Local: .github/workflows/main.yml
git clone https://github.com/seu-usuario/api-escolar-ci-cd-github-actions.git
cd api-escolar-ci-cd-github-actions
docker-compose up -dAcesse a API em: http://localhost:8000
Veja o workflow em .github/workflows/pipeline.yml. Ele é responsável por:
-
Construir a imagem com docker build
-
Validar o código e rodar testes
-
Subir a imagem (caso real) para o DockerHub ou GitHub Container Registry
-
Enviar alertas ou logs de execução