Repositorio onde Ficará todos os arquivos de configuraçao do nosso proxy com atualização automatica aqui assim que for mudado qualquer coisa nele.
Go to file
João Pedro Toledo Goncalves ff56fcf927 docs: add zabbix monitoring instructions 2026-01-27 12:01:04 -03:00
.gemini docs: add zabbix monitoring instructions 2026-01-27 12:01:04 -03:00
_backup Refactor: Migrate from Nginx/ModSec to Caddy Proxy 2026-01-27 10:12:13 -03:00
.dockerignore Chore: Cleanup legacy files and update ignore rules 2026-01-27 10:16:00 -03:00
.gitignore Chore: Cleanup legacy files and update ignore rules 2026-01-27 10:16:00 -03:00
README.md docs: add zabbix monitoring instructions 2026-01-27 12:01:04 -03:00
docker-compose.yml feat: enable prometheus metrics for Traefik 2026-01-27 11:59:29 -03:00
dynamic_conf.yml feat: migrate reverse proxy to Traefik with SSL and JSON logging 2026-01-27 11:45:40 -03:00
traefik.yml feat: migrate reverse proxy to Traefik with SSL and JSON logging 2026-01-27 11:45:40 -03:00

README.md

NGINX Pathfinder Proxy (Migrated to Traefik)

Solução moderna de Proxy Reverso containerizado, agora utilizando Traefik para maior automação, suporte nativo a Docker e SSL gerenciado via Let's Encrypt.

🚀 Funcionalidades

🛡️ Traefik Proxy

  • SSL Automatizado: Let's Encrypt nativo com renovação automática.
  • Auto-Discovery: Detecta automaticamente novos containers Docker com labels específicos.
  • Dashboard: Interface visual para monitoramento de rotas e serviços.
  • Métricas: Suporte nativo a Prometheus habilitado por padrão.
  • Logs em JSON: Ideal para integração com stacks de monitoramento (ELK, Loki).

Performance & Flexibilidade

  • HTTP/2 & HTTP/3: Suporte a protocolos modernos.
  • Roteamento Dinâmico: Configuração de backends externos (VMs/LXC) via arquivo dinâmico.

🛠️ Como Trabalhar neste Repositório

Pré-requisitos

  • Docker & Docker Compose instalados.
  • Portas 80 e 443 liberadas.

1. Implantar o Proxy (Portainer/Docker Compose)

  1. Certifique-se de que os arquivos traefik.yml e dynamic_conf.yml estão presentes.
  2. Crie o arquivo de certificados: touch acme.json && chmod 600 acme.json.
  3. Inicie os containers:
    docker compose up -d
    

2. Adicionar um Novo Site (Backend Externo)

Edite o arquivo dynamic_conf.yml para adicionar novas rotas para servidores fora do Docker.

Exemplo de rota:

http:
  routers:
    meu-site:
      rule: "Host(`meu-site.com.br`)"
      service: meu-servidor
      entryPoints: [websecure]
      tls: { certResolver: letsencrypt }
  services:
    meu-servidor:
      loadBalancer:
        servers:
          - url: "http://IP_DO_SERVIDOR"

3. Dashboard do Traefik

Acesse o dashboard interno para verificar o status das rotas:

  • URL: http://localhost:8080/dashboard/

🏗️ Visão Geral da Stack


📊 Monitoramento (Zabbix)

O Traefik está configurado para exportar métricas no formato Prometheus. Para monitorar no Zabbix:

  1. Host: Adicione o host do Traefik no Zabbix.
  2. Template: Use o template oficial "Traefik by HTTP" (que utiliza Prometheus internamente).
  3. Endpoint: As métricas estão disponíveis em http://IP_DO_PROXY:8080/metrics.
  4. Macros: Se necessário, ajuste a macro {$TRAEFIK.METRICS.PATH} para /metrics.

-mermaid +mermaid graph TD Client[Cliente Externo] -->|":80 / :443"| Traefik

subgraph DockerHost["Docker Host"]
    Traefik[Traefik Proxy]
    App1[Container A]
    App2[Container B]
end

subgraph External["Rede Externa (LXC/VM)"]
    Gitea[Gitea Server]
    Zammad[Zammad Server]
end

Traefik --> App1
Traefik --> App2
Traefik --> Gitea
Traefik --> Zammad

---

*Mantido por IT Guys*