28 pontos por GN⁺ 2025-02-17 | 12 comentários | Compartilhar no WhatsApp

Principais recursos do Caddy

  • Segurança e escalabilidade: o Caddy obtém e renova automaticamente certificados TLS por padrão para todos os sites. Isso torna os sites mais seguros e confiáveis.
  • TLS sob demanda: gerencia certificados TLS dinamicamente para domínios dos clientes, facilitando a escalabilidade de negócios SaaS.
  • Gerenciamento de TLS em grande escala: o Caddy foi projetado para gerenciar com estabilidade centenas de milhares de sites e milhares de instâncias.

Vantagens do Caddy

  • Software gratuito: o Caddy é oferecido gratuitamente, e o desenvolvimento contínuo é viabilizado por meio de patrocínio.
  • Servidor HTTPS avançado: o Caddy oferece TLS e PKI por padrão, além de permitir o gerenciamento de PKI interno.
  • API de configuração: é possível expor e manipular documentos JSON por meio de uma API RESTful.
  • Conformidade: atende por padrão às normas PCI, HIPAA e NIST.

Recursos avançados do Caddy

  • Coordenação de cluster: é possível configurar várias instâncias do Caddy com o mesmo armazenamento para coordenar automaticamente o gerenciamento de certificados.
  • Backends dinâmicos: localiza backends dinamicamente no momento da requisição, sendo adequado para ambientes que mudam rapidamente.
  • Alta disponibilidade: oferece recursos como verificações avançadas de integridade, alterações de configuração, circuit breaker e limitação de carga.

Configuração e extensibilidade do Caddy

  • Configuração flexível: usa JSON como formato de configuração padrão e oferece suporte a adaptadores de configuração em vários formatos.
  • Extensibilidade ilimitada: o Caddy foi projetado com uma arquitetura modular, permitindo compilar e usar apenas os recursos necessários.
  • Alto desempenho: oferece desempenho nativo de CPU, e os plugins são compilados em binários estáticos.

Casos de uso do Caddy

  • Servidor de aplicações PHP: por meio do FrankenPHP, entrega páginas PHP rapidamente sem exigir uma instalação separada do PHP.
  • Servidor de arquivos estáticos: o Caddy oferece recursos robustos de servidor de arquivos, que podem ser combinados com várias funcionalidades de middleware.
  • Gerenciamento automático de certificados: o Caddy gerencia certificados automaticamente para manter os sites sempre online.

Recomendação de usuários e especialistas

  • O Caddy é recomendado por muitos usuários e especialistas por ser fácil de usar, muito seguro e oferecer um conjunto poderoso de recursos.
  • Vários usuários estão satisfeitos com a configuração simples e os recursos automatizados do Caddy.

12 comentários

 
ssssut 2025-02-19

Eu uso desde o início do projeto, ainda na época em que era um projeto pessoal do mholt, e até cheguei a enviar alguns PRs no começo, então fico orgulhoso de ver como isso cresceu. Entre os servidores que configuro agora, em todos os ambientes que não são k8s estou usando só Caddy. Já se fala há muito tempo que o throughput não é tão alto, mas eu realmente invejo quem opera um serviço com tráfego a ponto de o throughput do Caddy virar um problema.

 
honglu 2025-02-19

Muito legal.

 
hands8142 2025-02-18

O que vocês acham do Traefik?? Estou pensando entre Traefik e Caddy.

 
porteleaf 2025-02-18

https://www.youtube.com/watch?v=N5PAU-vYrN8&t=663s
Com certeza é bom para usar em projetos pequenos. Na hora de colocar HTTPS, no nginx eu precisava acoplar o certbot, mas aqui isso já era suportado por padrão.
A desvantagem é que o desempenho é nginx > caddy.

 
yangeok 2025-02-25

Se o desempenho do computador for ruim, então acho que vou ter que usar nginx,,

 
bbulbum 2025-02-18

Uso há alguns anos e, no começo, achei estranho ter que fazer configurações para evitar isso quando não era necessário, já que o suporte automático a HTTPS vem como padrão. É tão simples que chega a dar a impressão de que um servidor web não deveria poder ser assim tão simples, por isso continuo usando bastante.

 
secret3056 2025-02-18

O caddy é extremamente poderoso e simples, mas acho que o throughput não é tão bom assim.
E isso pode ser uma vantagem ou uma desvantagem, mas se houver um plugin que você queira, é preciso fazer o build incluindo-o.

 
tribela 2025-02-18

O recurso de cache, que eu esperava que existisse por padrão, vem como plugin e ainda é preciso fazer o build para usar... Tirando esse ponto negativo, estou usando bem.

 
aer0700 2025-02-17

O servidor supremo... deu até vontade, haha

 
GN⁺ 2025-02-17
Comentários do Hacker News
  • O Caddy é muito útil ao testar APIs localmente com HTTP2 durante o desenvolvimento

    • A maioria dos servidores de desenvolvimento suporta apenas HTTP1, então no localhost só é possível ter até 6 conexões simultâneas
    • HTTP2 exige SSL, o que torna os testes e a configuração local mais incômodos
    • Com o proxy reverso do Caddy, é possível instalar um certificado raiz no repositório de confiança do sistema operacional e usar HTTP2 imediatamente
    • A ElectricSQL recomenda isso aos usuários, e o HTTP2 não fica preso ao limite de 6 conexões simultâneas
    • Colocar o Caddy na frente do Vite deixa o recarregamento muito mais rápido
    • O Vite usa um sistema de módulos JavaScript que carrega arquivos individuais no navegador e oferece suporte a HMR
    • Com HTTP2, colocar o Caddy na frente do Vite pode resolver todos esses problemas
  • Depois de mudar do nginx para o caddy-docker-proxy, a pessoa foi para o Pangolin e está muito satisfeita

    • O Pangolin é um frontend para o traefik, com autenticação embutida e tunelamento de tráfego via Wireguard
    • Era necessário encaminhamento TCP para um servidor de Minecraft, e isso foi resolvido de forma muito simples
    • Recomendado para quem quer uma versão melhor do Nginx Proxy Manager
    • A documentação ainda é limitada, mas o mantenedor ajuda bastante no Discord
  • Não há nada de ruim a dizer sobre o Caddy, mas parece que sua única vantagem sobre o Nginx é facilitar a configuração de certificados

    • Um cluster Kubernetes foi configurado há alguns anos para gerar e renovar certificados automaticamente
    • Tudo é tratado via Ingress, e ao apontar o balanceador de carga Nginx para um novo domínio, ele cuida do resto
    • HTTPS local não é necessário com frequência, mas quando é, também é preciso acesso externo
    • Usa-se um servidor rodando Nginx para fazer proxy para o localhost
    • Esse método funciona bem para essa pessoa, então ela continuará usando porque não vê motivo para mudar
  • Gosta muito do Caddy e o usa há vários anos

    • É muito confiável e, depois de aprender o básico, a configuração fica bem fácil
    • A documentação é um pouco difícil, mas ainda assim economiza muito mais tempo e energia do que tentar fazer o letsencrypt funcionar de forma confiável sobre o NGINX
  • Uma licença amigável (Apache v2) também é importante, especialmente em relação à arquitetura modular do Caddy

    • O ecossistema em torno do Caddy fica mais simples e seguro
    • Por exemplo, ele pode fornecer clientes de internet enquanto mantém o servidor privado
    • VPNs como Tailscale ou OpenZiti se encaixam nisso
  • O HTTPS automático fornece e renova certificados TLS para todos os sites

    • Redireciona automaticamente HTTP para HTTPS
    • Fica a dúvida se, ao apontar o IP do domínio para o Caddy, o certificado é gerado na hora já na primeira chamada HTTPS
    • Isso é importante por causa da necessidade de redirecionar o domínio apex para www
    • Dá para resolver com serviços gratuitos, mas com o Caddy pode ser mais simples
  • Depois de ler o site inteiro do começo ao fim, a pessoa não ficou convencida da confiabilidade do projeto

    • Há muito conteúdo autopromocional, o que deixa uma sensação desagradável
    • Parece improvável que os autores sejam sinceros sobre desvantagens conhecidas
    • Fica a dúvida se alguém sabe como isso foi apresentado no passado
  • Combinar Caddy com Caddy-Docker-Proxy é uma ótima forma de configurar um servidor com vários projetos Docker

    • Está rodando em alguns servidores e funciona bem
  • Adora o Caddy

    • Migrou há 2 anos de NGINX/OpenResty, e a configuração ficou muito mais simples
    • Usava lua-resty-auto-ssl, mas agora não usa mais
    • Lida bem com 70.000 visitantes por mês
  • O Traefik é uma ótima alternativa

    • A pessoa usa v1 e v2 há vários anos e configura serviços com labels do Docker
 
xcutz 2025-02-18

Nossa, caramba 😳