
Ecco alcune note su come ho avviato la mia istanza di prova di Discourse con Caddy Server.
Cose fantastiche su Caddy:
-
SSL gratuito con Let’s Encrypt
-
HTTP2 e QUIC pronti all’uso
-
Più facile da configurare di nginx
Contro:
- Non testato sul campo come apache, nginx e compagnia bella.
Come Fare
Preparazione di Discourse
Per prima cosa, devi applicare queste modifiche al tuo app.yml:
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
- "templates/web.socketed.template.yml" # <<<<<----- QUESTO È NUOVO
## Lascia questi due commentati
# - "templates/web.ssl.template.yml"
# - "templates/web.letsencrypt.ssl.template.yml"
## Lascia questi due commentati
expose:
# - "8080:80" # http
# - "443:443" # https
env:
## Questo dovrebbe essere commentato
#LETSENCRYPT_ACCOUNT_EMAIL: mymail@gmail.com
## Questo è richiesto per evitare avvisi di contenuti misti quando si è dietro a un reverse proxy
DISCOURSE_FORCE_HTTPS: true
Preparazione di Caddy
Nello spirito di Discourse, mettiamo Caddy anche in un’immagine Docker ![]()
Prima prepara con:
mkdir -p /var/caddy/data /var/caddy/config
nano /var/caddy/Caddyfile
Aggiungi quanto segue al Caddyfile (usando la sintassi Caddy v2):
{
email MYEMAILHERE@gmail.com
}
forum.example.com { # il tuo dominio qui
reverse_proxy unix//sock/nginx.http.sock
}
Salva ed esci.
Testiamo
Ora devi ricostruire Discourse:
cd /var/discourse
./launcher rebuild app
E poi esegui Caddy:
docker run -d \
-v /var/caddy/Caddyfile:/etc/caddy/Caddyfile \
-v /var/caddy/data:/data \
-v /var/caddy/config:/config \
-v /var/discourse/shared/standalone:/sock \
-p 80:80 -p 443:443 \
-p 443:443/udp \
--restart=always \
--name caddy \
caddy:latest
Alla fine, il tuo forum dovrebbe essere disponibile al tuo dominio, utilizzando SSL + HTTP2 + QUIC. Non puoi essere più hipster di così.


