|
| 1 | +<div align="center"> |
| 2 | + |
| 3 | +# 🖥️ GLPI Docker Stack |
| 4 | + |
| 5 | +**Stack production-grade do GLPI 11 construída em fases — do deploy local ao cloud com Terraform.** |
| 6 | + |
| 7 | + |
| 8 | + |
| 9 | + |
| 10 | + |
| 11 | + |
| 12 | +</div> |
| 13 | + |
| 14 | +--- |
| 15 | + |
| 16 | +## Sobre o Projeto |
| 17 | + |
| 18 | +Este repositório documenta a evolução de uma stack Docker production-grade para o **GLPI 11** (Gestionnaire Libre de Parc Informatique), construída incrementalmente em fases. |
| 19 | + |
| 20 | +Cada fase representa um marco funcional independente e validado, do deploy local com TLS automático até a infraestrutura gerenciada na AWS com Terraform. |
| 21 | + |
| 22 | +O projeto segue princípios de **infraestrutura como código**, **defesa em profundidade** e **Single Responsibility** em cada container. |
| 23 | + |
| 24 | +--- |
| 25 | + |
| 26 | +## Fases |
| 27 | + |
| 28 | +| Fase | Diretório | Status | Descrição | |
| 29 | +|:---:|:---|:---:|:---| |
| 30 | +| 1 | [`fase_01_glpi_mariadb_caddy/`](fase_01_glpi_mariadb_caddy/) | ✅ Concluída | Stack base: GLPI 11 + MariaDB + Redis + Caddy (TLS) + Backup agendado | |
| 31 | +| 2 | `fase_02_Observabilidade/` | 🔜 Planejada | Prometheus + Grafana + Loki + Promtail + Alertmanager | |
| 32 | +| 3 | `fase_03_AWS_Terraform/` | 🔜 Planejada | VPC, EC2, RDS, ElastiCache, S3, ALB — IaC completo em Terraform | |
| 33 | + |
| 34 | +--- |
| 35 | + |
| 36 | +## Fase 1 — Stack Base |
| 37 | + |
| 38 | +6 containers Docker orquestrados por Docker Compose, com hardening aplicado em todos: |
| 39 | + |
| 40 | +| Container | Tecnologia | Função | |
| 41 | +|:---|:---|:---| |
| 42 | +| `glpi-app` | GLPI 11.0.7 + PHP 8.3 + Apache | Aplicação web | |
| 43 | +| `glpi-cron` | GLPI 11.0.7 | Worker dedicado de tarefas agendadas | |
| 44 | +| `mariadb` | MariaDB 11.4 | Banco de dados | |
| 45 | +| `redis` | Redis 7.4 Alpine | Cache e sessões PHP | |
| 46 | +| `caddy` | Caddy 2.8 Alpine | Reverse proxy + TLS automático (Let's Encrypt) | |
| 47 | +| `backup` | Alpine 3.20 | Dump diário do banco + arquivos com restore testado | |
| 48 | + |
| 49 | +→ Veja o [README completo da Fase 1](fase_01_glpi_mariadb_caddy/README.md) para instalação, variáveis e operação. |
| 50 | + |
| 51 | +--- |
| 52 | + |
| 53 | +## Estrutura do Repositório |
| 54 | + |
| 55 | +``` |
| 56 | +. |
| 57 | +├── fase_01_glpi_mariadb_caddy/ # Stack base (concluída) |
| 58 | +├── fase_02_Observabilidade/ # Observabilidade (planejada) |
| 59 | +├── fase_03_AWS_Terraform/ # AWS + IaC (planejada) |
| 60 | +└── .github/ |
| 61 | + └── ISSUE_TEMPLATE/ # Templates de bug report e feature request |
| 62 | +``` |
| 63 | + |
| 64 | +Cada fase contém seu próprio `docker-compose.yml`, `README.md`, `.env.example` e scripts de automação. |
| 65 | + |
| 66 | +--- |
| 67 | + |
| 68 | +## Como Contribuir |
| 69 | + |
| 70 | +Veja [CONTRIBUTING.md](fase_01_glpi_mariadb_caddy/CONTRIBUTING.md) para as convenções do projeto. |
| 71 | + |
| 72 | +--- |
| 73 | + |
| 74 | +## Licença |
| 75 | + |
| 76 | +Distribuído sob a licença **MIT**. Veja [LICENSE](LICENSE) para mais informações. |
| 77 | + |
| 78 | +GLPI é distribuído sob **GPL-3.0** — ver [glpi-project.org](https://www.glpi-project.org). |
0 commit comments