Server Manager/ Help
Open Server Manager →

Installa WordPress

Un clic + una domanda (il dominio), poi approvi i comandi di installazione. WordPress + MariaDB in Docker, con Caddy davanti e HTTPS automatico, pronto in 2–3 minuti. La procedura guidata iniziale di WordPress gestisce titolo del sito + account amministratore.

Vuoi WordPress attivo sul tuo dominio (o anche solo sull'IP del server), con HTTPS, dietro a un reverse proxy configurato bene, su Docker così non interferisce con altro. La ricetta Installa WordPress di Server Manager fa tutto questo in circa 2–3 minuti. Rispondi a una domanda (quale dominio), poi approvi ogni comando mentre la chat lo esegue.

Cosa otterrai

  • Un sito WordPress 6 in esecuzione in un container Docker, collegato a un container MariaDB 11 su una rete privata.
  • Caddy (già in esecuzione sull'host) che fa da reverse proxy dal tuo dominio → al container, con HTTPS Let's Encrypt emesso automaticamente.
  • I segreti del sito (password del database, gli 8 salt di WordPress) generati automaticamente e salvati in /opt/wordpress/.env, modalità 600, di proprietà di root. Niente in chiaro altrove.
  • Una scheda del workload nella schermata iniziale con il logo di WordPress. Clicca manage → per aprire le schede specifiche della ricetta: WP-Admin · Plugin · Temi · Manutenzione · Stato · Log · Controlli · Backup.

Prerequisito — un dominio (facoltativo ma consigliato)

WordPress funziona senza problemi su un IP diretto per fare test, ma per un sito vero ti serve un dominio con HTTPS. Se non l'hai già fatto, esegui prima Collega un dominio: punta mysite.com all'IP di questo server e conferma che il DNS si sia propagato. La procedura di installazione funziona in entrambi i casi, ma configurare prima il DNS e poi installare è il percorso più fluido: Caddy può emettere subito un certificato TLS quando il dominio punta già qui.

Se per ora hai solo un IP, va bene: puoi collegare un dominio più avanti senza reinstallare: barra superiore → Punta qui un dominio. (Oppure usa il pulsante Collega un dominio che compare nella barra delle azioni in basso quando clicchi una scheda che non ha ancora un dominio: è la stessa procedura guidata, già indirizzata a quel workload.)

La procedura passo passo

1Apri la palette delle ricette

Premi / in qualsiasi punto della chat per aprire la palette, OPPURE clicca Sfoglia tutte le azioni sotto la chat, OPPURE clicca Azioni nella barra superiore e scegli WordPress.

Palette delle ricette con la scheda in evidenza "Installa WordPress"
Palette delle ricette con la scheda in evidenza "Installa WordPress"

La palette mostra WordPress in alto come scheda selezionata Inizia da qui, e anche più in basso nella categoria App web. Entrambe le voci avviano lo stesso flusso di installazione.

Nota per server senza Caddy. Se il tuo server usa già nginx, Apache o Traefik invece di Caddy, la ricetta WordPress è "protetta": la scheda mostra il badge 💬 via chat. Cliccandola funziona comunque; Faro configurerà WordPress in modo nativo per il tuo motore invece di installare Caddy. Vedi Perché Caddy? e Migrare a Caddy per il contesto.
2Faro chiede il dominio

Dopo che clicchi la scheda, la chat prende il controllo. Il primo messaggio di Faro è un controllo rapido ("c'è già wordpress qui?", "le porte 80/443 sono libere?", ecc.) più una breve domanda:

Chat che mostra la domanda di Faro: "Quale dominio deve servire questo sito WordPress?"
Chat che mostra la domanda di Faro: "Quale dominio deve servire questo sito WordPress?"

Scrivi il dominio (per esempio mysite.com) — oppure skip se vuoi prima testare sull'IP diretto. Poi invia.

3Approva ogni comando durante l'esecuzione

Faro si ferma per chiederti conferma su ogni comando che modifica lo stato del server. Il primo gruppo di solito include:

  • (solo se manca) apt install docker.io docker-compose-plugin — installa Docker.
  • mkdir -p /opt/wordpress — directory di installazione.
  • openssl rand -base64 32 (password DB) e openssl rand -base64 48 × 8 (i salt di WordPress).
  • Scrittura di /opt/wordpress/docker-compose.yml (wordpress:6 + mariadb:11 fissati, volumi nominati, rete interna, porta pubblicata su 127.0.0.1:<random> — mai 0.0.0.0).
  • Scrittura di /opt/wordpress/.env con tutti i segreti, chmod 600.
  • docker compose up -d — avvia i container.
  • Blocco Caddyfile per il tuo dominio → https://mysite.com { reverse_proxy 127.0.0.1:<port> }caddy reload.
Chat che mostra un comando "docker compose up -d" in attesa di Approve / Skip / Cancel
Chat che mostra un comando "docker compose up -d" in attesa di Approve / Skip / Cancel

Il testo esatto di ogni comando è visibile prima dell'approvazione. Puoi scegliere Approva, Salta (raramente utile: di solito rompe l'installazione) o Annulla (non lascia nulla in esecuzione né nulla su disco che non possiamo ripulire).

Perché tutte queste approvazioni? Server Manager non esegue nulla di distruttivo senza il tuo OK esplicito. Nemmeno per un'installazione di routine. È un attrito voluto. Dopo la prima installazione saprai cosa aspettarti; quelle successive sembreranno più rapide perché il ritmo delle approvazioni ti sarà familiare.

Tempo totale di installazione, approvazioni incluse: di solito 2–3 minuti. La maggior parte del tempo va al pull Docker (~500 MB di immagini WordPress + MariaDB alla prima installazione).

4Faro ti consegna l'URL

Quando i container sono avviati e Caddy è stato ricaricato, Faro ti dà l'URL:

Chat che mostra il messaggio di installazione completata con l'URL di WordPress evidenziato
Chat che mostra il messaggio di installazione completata con l'URL di WordPress evidenziato

Ti fa anche una domanda proattiva: "Vuoi che configuri i backup notturni del database?" Scegli sì o no: puoi sempre configurarli più avanti (vedi Backup).

5Completa la procedura guidata iniziale di WordPress

Clicca l'URL. Si apre la procedura di installazione di WordPress: la configurazione di Server Manager è finita; da qui in poi interagisci direttamente con WordPress.

Schermata di installazione in 5 minuti di WordPress — Titolo del sito, Nome utente, Password, La tua email, poi Installa WordPress
Schermata di installazione in 5 minuti di WordPress — Titolo del sito, Nome utente, Password, La tua email, poi Installa WordPress

Imposta il titolo del sito, scegli un nome utente amministratore (non "admin": scegli qualcosa di meno prevedibile), imposta una password amministratore robusta (oppure lascia che WP ne generi una e salvala nel tuo password manager), inserisci l'email amministratore. Clicca Installa WordPress.

Le credenziali amministratore di WordPress NON sono le stesse del tuo login Server Manager. Vivono dentro il database di WordPress, separate da Server Manager. Scegli una password robusta e salvala in un password manager: non c'è modo di recuperare una password admin WP dimenticata dal lato di Server Manager senza intervenire sul database (la chat può farlo; vedi "Domande frequenti" più sotto).

Hai finito. Accedi a /wp-admin/, scrivi il tuo primo articolo, installa un tema, installa plugin: come su qualsiasi sito WordPress.

6Di nuovo in Server Manager

Ora nella schermata iniziale compare una scheda workload con il simbolo di WordPress + il titolo del tuo sito:

Scheda workload nella schermata iniziale — sito WordPress con stato "OK · RUNNING"
Scheda workload nella schermata iniziale — sito WordPress con stato "OK · RUNNING"

Clicca manage → per aprire il con le schede specifiche della ricetta:

  • WP-Admin — un link con un clic a https://your-domain/wp-admin/.
  • Plugin — elenco dei plugin installati con Attiva / Disattiva / Aggiorna / Elimina in un clic. (L'aggiunta di nuovi plugin avviene comunque da WP-Admin: l'indice di ricerca dei plugin si trova lì.)
  • Temi — come Plugin, ma per i temi.
  • Manutenzione — tre funzioni in una scheda: Svuota cache WordPress (forza la ricostruzione alla visita successiva), Cerca e sostituisci nel database (di solito per cambiare l'URL del sito: gestito correttamente da wp-cli, così i dati PHP serializzati non si corrompono; per impostazione predefinita mostra un'anteprima sicura in dry-run), e Aggiorna core WordPress (con promemoria Backup / Clona prima di cambiare qualsiasi cosa).
  • Stato / Log / Controlli / Backup — le schede universali (presenti per ogni tipo di workload).
Scheda WP-Admin del ServicePanel — URL di destinazione + pulsante "Apri amministrazione WordPress →"
Scheda WP-Admin del ServicePanel — URL di destinazione + pulsante "Apri amministrazione WordPress →"
Scheda Plugin del ServicePanel — elenco dei plugin con pulsanti Attiva/Disattiva
Scheda Plugin del ServicePanel — elenco dei plugin con pulsanti Attiva/Disattiva

Cosa è stato installato, esattamente

Per riferimento (non devi toccare nulla: il pannello del servizio gestisce tutto):

DoveCosa
/opt/wordpress/docker-compose.ymlDefinizioni dei container (WordPress 6 + MariaDB 11)
/opt/wordpress/.envSegreti (password DB + 8 salt WP) — chmod 600, di proprietà di root
Volume nominato Docker wp_datawp-content di WordPress (upload, plugin, temi)
Volume nominato Docker db_dataFile dati MariaDB
Rete Docker wordpress_defaultRete interna per far comunicare i due container
/etc/caddy/CaddyfileIl blocco reverse proxy per il tuo dominio (attivabile con un caddy reload)
Directory dati CaddyCertificato Let's Encrypt emesso automaticamente per il tuo dominio

Il container WordPress pubblica la sua porta su 127.0.0.1:<random in 38000–39999>solo su localhost. Caddy lo raggiunge tramite quella porta locale; Internet pubblico vede solo Caddy su 80/443. Quindi, anche se WordPress avesse una vulnerabilità, il container in sé non è esposto direttamente.

Domande frequenti

Dove trovo i plugin? Tramite la ricerca di WordPress WP-Admin → Plugin → Aggiungi nuovo, come in qualsiasi sito WP normale. Una volta installati, la scheda Plugin nel pannello del servizio di Server Manager li mostra con attiva/disattiva/aggiorna/elimina in un clic.

**Posso modificare wp-config.php?** È dentro il container e viene rigenerato con docker compose up. Le modifiche personalizzate vanno in /opt/wordpress/.env (i segreti + le cose che WordPress legge tramite variabili d'ambiente) o in /opt/wordpress/docker-compose.yml (la definizione del container). Per aggiungere una variabile d'ambiente personalizzata, chiedi a Faro: "add WP_DEBUG=true to the wordpress container" — e approva la modifica.

Ho perso la password amministratore. Non usare il link "Password dimenticata?" di WordPress a meno che tu non abbia configurato Invia email dal tuo dominio (altrimenti l'email non arriverà da nessuna parte). Chiedi invece a Faro: "reset the WordPress admin password." Esegue un pattern sicuro di rotazione nel DB (nessuna password in chiaro viene mai stampata) e poi ti comunica la nuova password.

Ho perso anche il nome utente amministratore. Chiedi a Faro: "who's the WordPress admin?" — elenca dal database gli account con ruolo amministratore.

Posso eseguire più siti WordPress sullo stesso server? Sì. Esegui di nuovo la ricetta Installa WordPress con un dominio diverso: Faro rileverà l'installazione esistente in /opt/wordpress/ (il pre-check cerca wordpress in docker ps) e proporrà una directory di installazione che non collide (di solito /opt/wordpress-<short-name>/), così i nuovi container, volumi e blocchi Caddy non si scontrano con l'originale. Caddy smista in base al dominio. Vedi Più siti sullo stesso server per la versione completa.

WordPress è lento / sta esaurendo la memoria. Ogni installazione richiede circa 256–512 MB di RAM a riposo (WordPress + MariaDB insieme). Su un server da 1 GB puoi eseguirne una comodamente; su 2 GB, due; e così via. La scheda workload nella schermata iniziale mostra l'uso attuale della RAM: se lo vedi avvicinarsi al totale del server, è il momento di aumentare le risorse del server o spostare i siti più pesanti su istanze più grandi. Se invece WP-Admin segnala nello specifico "Allowed memory size exhausted" durante un'azione, chiedi a Faro in chat di aumentare il memory_limit di PHP: modificherà il file di configurazione corretto dentro il container e riavvierà.

Posso migrare qui un sito WordPress esistente? Sì: usa la procedura guidata Migra qui un sito esistente. Copia i file + il DB del tuo sito dal vecchio host e lo installa qui usando la stessa ricetta.

Posso avere HTTPS senza un dominio? Non con Let's Encrypt (richiede un dominio reale). Il sito sarà servito in semplice HTTP su http://<your-ip> finché non punti un dominio al server; a quel punto HTTPS verrà emesso automaticamente entro circa 30 secondi.

Cosa NON rientra qui

  • WordPress multisite (network) — la ricetta installa un WP a sito singolo. Multisite si abilita dentro WordPress stesso, dopo l'installazione, tramite modifiche a wp-config.php. Chiedi a Faro di abilitarlo; la modifica è nel file env e in un flag nel database di WP.
  • Temi/plugin WordPress personalizzati distribuiti con il tuo codice — la ricetta installa un WP standard. Se hai un tema + plugin personalizzati come codice, distribuiscili tramite Migra qui un sito esistente (dal tuo ambiente di sviluppo) oppure come bundle di backup tramite Ripristina da un backup.
  • Hardening / configurazione della sicurezza di WordPress — la ricetta fornisce impostazioni predefinite ragionevoli (segreti casuali, porta non esposta pubblicamente, segreti in variabili d'ambiente). Cose come 2FA, Wordfence, scansioni malware: installale come plugin dentro WordPress.
  • Invio di email DA WordPress — WP-Mail o i plugin per moduli di contatto hanno bisogno di un endpoint SMTP/API. Esegui Invia email dal tuo dominio (Resend) e inserisci quelle credenziali in un plugin SMTP per WP.

Riferimento

Percorsi di installazione predefiniti:

  • Directory di installazione: /opt/wordpress/ (oppure /opt/wordpress-<suffix>/ se ce ne sono più di una)
  • File Compose: /opt/wordpress/docker-compose.yml
  • Env / segreti: /opt/wordpress/.env
  • Blocco Caddy: /etc/caddy/Caddyfile — cerca la riga reverse_proxy del tuo dominio

I nomi dei container seguono il pattern predefinito di Compose <project>-<service>-<n>: di solito wordpress-wordpress-1 (web) e wordpress-db-1 (database) su Compose v2 moderno; la vecchia v1 usa separatori _ (wordpress_wordpress_1). Esegui docker ps per confermare esattamente cosa sta girando sul tuo server.

Intervallo porte interne: 38000–39999 — la ricetta ne sceglie una libera in modo casuale e la pubblica su 127.0.0.1. Solo Caddy sull'host la raggiunge; Internet pubblico no.

Versioni WordPress + MariaDB: fissate ai major tag wordpress:6 e mariadb:11. Gli aggiornamenti correttivi vengono scaricati con docker compose pull. Gli upgrade di versione major (WP 6 → 7, MariaDB 11 → 12) vanno richiesti a parte in chat: a volte richiedono migrazioni del DB.

Per disinstallare: il pannello manage → della scheda nella schermata iniziale ha un'azione Elimina sotto Controlli. Ferma i container, può cancellare i volumi nominati (quindi perdi i dati) oppure conservarli (così puoi reinstallare più avanti), e rimuove il blocco Caddy. C'è anche un'azione in un clic nella barra delle azioni in basso (clicca la scheda → Elimina).