Installazione software · 6 min read · Oct 26, 2025

Come installare il sistema di pagina di stato Cachet su Debian 12

Cachet è un sistema di pagina di stato open-source scritto in PHP. Ti consente di monitorare i tempi di inattività e i guasti del sistema sulla tua infrastruttura. Cachet fornisce API JSO, report, metriche, metodi di notifica multipli e autenticazione a due fattori.

Nel seguente tutorial, ti mostreremo come installare la pagina di stato Cachet su un server Debian 12. Eseguirai Cachet come un contenitore Docker con il database PostgreSQL e il server web Nginx.

Prerequisiti

Prima di procedere, assicurati di avere quanto segue:

  • Un server Debian 12.
  • Un utente non root con privilegi sudo.
  • UFW installato e configurato.
  • Un nome di dominio puntato a un indirizzo IP del server.

Installazione del Docker Engine

In questo esempio, installerai Cachet come contenitore tramite Docker. Quindi, devi installare il motore Docker sul tuo sistema Debian. In questo esempio, utilizzerai i pacchetti ufficiali del motore Docker.

Per prima cosa, esegui il comando qui sotto per installare i pacchetti curl e ca-certificates.

sudo apt install ca-certificates curl -y

Ora aggiungi la chiave GPG per il repository Docker eseguendo il seguente comando.

sudo install -m 0755 -d /etc/apt/keyrings  
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc  
sudo chmod a+r /etc/apt/keyrings/docker.asc

Successivamente, aggiungi il repository Docker Engine per il sistema Debian utilizzando il comando qui sotto.

echo \  
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \  
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \  
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Una volta aggiunto il repository Docker, aggiorna e aggiorna l’indice dei pacchetti con il comando qui sotto.

sudo apt update

add repo

Ora installa il Docker Engine sul tuo sistema con il seguente comando. Digita Y per confermare l’installazione.

sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

install docker

Dopo che l’installazione è completata, il servizio Docker dovrebbe essere in esecuzione automaticamente. Controlla lo stato del servizio Docker con il comando qui sotto.

sudo systemctl status docker

Vedrai l’output in esecuzione come il seguente:

check docker

Per assicurarti che il tuo utente possa eseguire e avviare il contenitore, devi aggiungerlo al gruppo docker con il comando qui sotto.

sudo usermod -aG sudo alice

Infine, accedi come il tuo utente ed esegui il comando docker qui sotto per eseguire un contenitore hello-world.

su - alice  
docker run hello-world

Se la tua configurazione è riuscita, dovresti ottenere l’output ‘Hello Docker’ come il seguente:

docker hello-world

Esecuzione di Cachet con Docker e database PostgreSQL

Dopo aver installato Docker, devi scaricare il progetto Cachet e configurare la tua installazione. In questo caso, installerai ed eseguirai Cachet come utente non root con un contenitore Docker.

Scarica il progetto Cachet nella directory cachet-docker e accedi ad essa.

git clone https://github.com/cachethq/Docker.git cachet-docker  
cd cachet-docker

Apri il file docker-compose.yml utilizzando il seguente comando dell’editor nano.

nano docker-compose.yml

Cambia la porta host predefinita in 8000 come segue. Puoi anche personalizzare i dettagli del database con le tue informazioni e lasciare la versione predefinita di Cachet per ora a 2.4.

 ports:  
 - 8000:8000

Salva il file ed esci.

Ora esegui i seguenti comandi docker per costruire la tua immagine Cached e avviare i contenitori sia per Cachet che per PostgreSQL.

docker compose build  
docker compose up

Di seguito, puoi vedere lo screenshot di quando si costruisce l’immagine Docker per Cachet.

docker byuild

Di seguito è lo screenshot quando si eseguono contenitori/servizi sia per Cachet che per PostgreSQL.

container running

Nei log dettagliati del contenitore Cachet, troverai un errore riguardante la configurazione APP_KEY. Copia il APP_KEY generato e premi Ctrl+c per terminare i contenitori.

Successivamente, riapri il file docker-compose.yml utilizzando l’editor nano.

nano docker-compose.yml

Cambia il parametro APP_KEY predefinito come segue. Assicurati di includere la stringa base64.

APP_KEY=base64:WfKUhY0wAOyr5hkxoctZUSWPGdXbBUWFvNLCoI7kTU8=

Salva il file ed esci.

Ora esegui il comando docker qui sotto per terminare i contenitori per Cachet e PostgreSQL, quindi avviali di nuovo.

docker compose down  
docker compose up -d

Una volta avviati i contenitori, verifica l’elenco dei contenitori in esecuzione utilizzando il seguente comando.

docker compose ps

Come puoi vedere qui sotto, sia i contenitori Cachet che PostgreSQL sono in esecuzione. Il contenitore Cachet è in esecuzione sulla porta 8000.

Configurazione di Nginx come proxy inverso

Ora che Cachet è in esecuzione come contenitore sulla porta 8000, installerai e configurerai Nginx come proxy inverso per Cachet.

Installa Nginx sul tuo server Debian utilizzando il comando qui sotto.

sudo apt install nginx -y

install nginx

Una volta completata l’installazione, crea una nuova configurazione del blocco server Nginx /etc/nginx/sites-available/cachet utilizzando il comando dell’editor nano qui sotto.

sudo nano /etc/nginx/sites-available/cachet

Inserisci la configurazione qui sotto e assicurati di cambiare il parametro server_name con il tuo nome di dominio.

server {  
 listen 80;  
 server_name status.howtoforge.local;  
 location / {  
 proxy_pass http://127.0.0.1:8000;  
 proxy_set_header Host $host;  
 proxy_set_header X-Real-IP $remote_addr;  
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
 proxy_set_header X-Forwarded-Proto $scheme;  
 }  
}

Salva il file ed esci dall’editor.

Successivamente, esegui il comando Nginx qui sotto per attivare il blocco del server Cachet e controlla la sintassi di Nginx. Se hai una sintassi corretta, dovresti ottenere un output ‘syntax is ok‘.

sudo ln -s /etc/nginx/sites-available/cachet /etc/nginx/sites-enabled/  
sudo nginx -t

Infine, riavvia il server web Nginx per applicare la configurazione del blocco del server Cachet e verifica il servizio Nginx per assicurarti che sia in esecuzione.

sudo systemctl restart nginx  
sudo systemctl status nginx

Se Nginx è in esecuzione, dovresti ottenere un output active(running).

check nginx

Configurazione di UFW (Firewall Semplice)

Prima di accedere a Cachet, devi assicurarti che le porte HTTP e HTTPS siano consentite. Su Ubuntu, consentirai il traffico sia per HTTP che per HTTPS tramite UFW (Firewall Semplice).

Assicurati che UFW sia abilitato, ora esegui il seguente comando per abilitare il profilo ‘Nginx Full‘ su UFW. Questo consentirà il traffico per entrambi i protocolli HTTP e HTTPS al tuo server web Nginx.

sudo ufw allow 'Nginx Full'

Ora verifica l’elenco delle regole abilitate in UFW con il comando qui sotto.

sudo ufw status

Vedrai che il profilo ‘Nginx Full‘ è abilitato su UFW.

setup ufw

Sicurezza di Cachet con HTTPS

A questo punto, il tuo Cachet dovrebbe essere accessibile tramite Nginx. Per garantire la sicurezza della tua installazione, abiliterai HTTPS per Cachet tramite SSL da Letsencrypt.

Quindi esegui il comando qui sotto per installare Certbot e il plugin Certbot Nginx. Inserisci Y per confermare l’installazione.

sudo apt install certbot python3-nginx-certbot

Una volta completata l’installazione, esegui il comando certbot qui sotto per generare certificati SSL/TLS per la tua installazione di Cachet. Assicurati di cambiare i dettagli del nome di dominio e dell’indirizzo email con le tue informazioni.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d status.howtoforge.local

Dopo che tutto è completo, i tuoi certificati SSL/TLS dovrebbero essere memorizzati nella directory /etc/lestencrypt/live/status.howtoforge.local. Inoltre, il tuo Cachet dovrebbe essere protetto tramite HTTPS.

Installazione di Cachet

Avvia il tuo browser web preferito e visita la tua installazione di Cachet https://status.howtoforge.local/. Se la tua installazione ha avuto successo, dovresti ottenere la seguente pagina.

Seleziona il Cache Driver predefinito, il Queue Driver e il Session Driver su Database. Quindi, inserisci i dettagli del tuo server di posta.

Clicca su Next per continuare.

setup cachet

Ora imposta il nome della pagina di stato, il fuso orario predefinito e la lingua predefinita. Quindi clicca di nuovo su Next.

setup language

Ora crea un nuovo utente admin per Cachet digitando il tuo nome utente, email e password. Quindi, clicca su Complete Setup per confermare.

setup admin

Una volta completato, vedrai il seguente - clicca su Go to the dashboard.

complete installation

Accedi a Cachet con il tuo nome utente e password, quindi clicca su Login.

login

Se la tua installazione ha avuto successo, dovresti ottenere il dashboard di Cachet come il seguente:

dashboard

Conclusione

Congratulazioni! Hai ora installato la pagina di stato Cachet sul server Debian 12 con Docker. La tua installazione di Cachet è in esecuzione con un database PostgreSQL e un server web Nginx. Ora puoi monitorare i tuoi siti utilizzando Cachet.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.