WP Staging CLI può creare e gestire ambienti WordPress basati su Docker per lo sviluppo e i test in locale. Questa guida ti spiega come aggiungere, elencare, eliminare e gestire i siti WordPress.
Cosa otterrai
Ogni sito Docker include:
- PHP-FPM con la versione di PHP che scegli
- Web server Nginx con HTTPS
- Database MariaDB
- Mailpit per testare l’invio email
- Certificati SSL automatici tramite mkcert
- Configurazione del file hosts per i domini locali
Prerequisiti
- Docker 20.10.0 o versione successiva
- Docker Compose 2.19.0 o versione successiva
- Almeno 2 core CPU e 4 GB di RAM
Aggiungere un nuovo sito
Crea un nuovo sito WordPress con un dominio locale personalizzato:
wpstaging add https://mysite.localOppure senza specificare il protocollo:
wpstaging add mysite.localTi serve un WordPress Multisite?
wpstaging add mysite.local --multisiteUna volta creato il sito, potrai accedervi su https://mysite.local.
Aggiungere un sito da un Backup esistente
Crea un nuovo sito e ripristinalo da un file di Backup WP Staging in un solo passaggio:
wpstaging add mysite.local --from=backup.wpstgOppure da un URL remoto:
wpstaging add mysite.local --from=https://example.com/backup.wpstgWordPress Multisite:
wpstaging add mysite.local --multisite --from=BACKUP_URLQuesto è il modo consigliato per creare una copia locale del tuo sito di produzione. Gestisce tutto: configurazione Docker, estrazione del Backup, importazione del database e sostituzione degli URL.
Personalizzare la configurazione del sito
Versione di PHP
Specifica la versione di PHP (il valore predefinito è 8.1):
wpstaging add mysite.local --php=8.2Le versioni di PHP disponibili dipendono dalle immagini Docker supportate.
Versione di WordPress
Installa una versione specifica di WordPress (il valore predefinito è la più recente):
wpstaging add mysite.local --wp=6.4.2Porte personalizzate
Cambia le porte predefinite se entrano in conflitto con altri servizi:
wpstaging add mysite.local \
--http-port=8080 \
--https-port=8443 \
--db-port=3307Indirizzo IP del container
Per impostazione predefinita i siti usano indirizzi IP nel range 127.3.2.x. Puoi indicarne uno personalizzato:
wpstaging add mysite.local --container-ip=127.0.0.1Percorso degli ambienti
Modifica la directory in cui vengono salvati gli ambienti Docker (predefinita: ~/wpstaging):
wpstaging add mysite.local --env-path=/custom/pathTutti i flag del comando add
| Flag | Predefinito | Descrizione |
|---|---|---|
--php | 8.1 | Versione di PHP |
--wp | latest | Versione di WordPress |
--from | – | Percorso o URL del file di Backup da ripristinare |
--env-path | ~/wpstaging | Percorso in cui salvare gli ambienti Docker |
--container-ip | 127.3.2.1 | Indirizzo IP del container |
--http-port | 80 | Porta HTTP di Nginx |
--https-port | 443 | Porta HTTPS di Nginx |
--db-port | 3306 | Porta di MariaDB |
--db-root | 123456 | Password root di MariaDB |
--mailpit-http-port | 8025 | Porta dell’interfaccia web di Mailpit |
--disable-mailpit | false | Disabilita il container Mailpit |
Flag di configurazione di WordPress
| Flag | Predefinito | Descrizione |
|---|---|---|
--db-name | auto | Nome del database WordPress |
--db-user | auto | Utente del database WordPress |
--db-pass | auto | Password del database WordPress |
--db-prefix | wp_ | Prefisso delle tabelle WordPress |
--db-host | localhost | Hostname del database WordPress |
--db-ssl | false | Abilita SSL per la connessione al database WordPress |
--admin-user | admin | Nome utente amministratore di WordPress |
--admin-pass | admin | Password amministratore di WordPress |
--admin-email | admin@dev.null | Email amministratore di WordPress |
--secure-credentials | false | Genera credenziali casuali sicure |
--multisite | false | Abilita WordPress Multisite |
Elencare i siti
Visualizza tutti i siti WordPress presenti nel tuo ambiente Docker:
wpstaging listEsempio di output:
HOSTNAME STATUS PHP IP
mysite.local running 8.1 127.3.2.1
dev.local stopped 8.2 127.3.2.2
test.local running 8.0 127.3.2.3Visualizzare i dettagli di siti specifici
Ottieni informazioni dettagliate su uno o più siti:
wpstaging list mysite.localOppure più siti contemporaneamente:
wpstaging list site1.local site2.localEliminare i siti
Elimina un sito specifico:
wpstaging del mysite.localElimina più siti contemporaneamente:
wpstaging del site1.local site2.localElimina tutti i siti (con richiesta di conferma):
wpstaging delAttenzione: eliminando un sito vengono rimossi tutti i suoi file, il database e la configurazione. L’operazione non può essere annullata.
Abilitare e disabilitare i siti
Disabilita un sito senza eliminarlo:
wpstaging disable mysite.localRiabilita un sito disabilitato:
wpstaging enable mysite.localI siti disabilitati mantengono i loro dati, ma i container non vengono avviati.
Ripristinare un sito allo stato iniziale
Ripristina un sito a un’installazione WordPress pulita:
wpstaging reset mysite.localQuesta operazione rimuove tutti i contenuti di WordPress e reinstalla WordPress, mantenendo intatta la configurazione Docker.
Reset con una versione diversa di WordPress
Specifica una versione di WordPress diversa durante il reset:
wpstaging reset mysite.local --wp=6.5Reset e ripristino da Backup
Reimposta il sito e ripristinalo da un Backup WP Staging in un solo passaggio:
wpstaging reset mysite.local --from=backup.wpstg
wpstaging reset mysite.local --from=https://example.com/backup.wpstgCredenziali sicure
Per una maggiore sicurezza, soprattutto in ambienti condivisi, usa credenziali casuali:
wpstaging add mysite.local --secure-credentialsQuesta opzione genera password casuali per:
- L’utente root di MariaDB
- L’utente del database WordPress
- L’utente amministratore di WordPress
Le credenziali generate vengono mostrate al termine della creazione del sito.
WordPress Multisite
Crea un’installazione WordPress Multisite:
wpstaging add mynetwork.local --multisiteNote per macOS
Utenti macOS: l’associazione automatica degli alias IP è abilitata di default per configurazioni multi-sito senza interruzioni, usando il range IP di loopback 127.3.2.1 – 127.3.2.254. Questa operazione richiede sudo e ti verrà chiesta la password.
Suggerimento: configura sudo senza password per wpstaging così da evitare richieste di password ripetute. Consulta le FAQ per le istruzioni.
Prossimi passi
- Controllare i container Docker – Avvio, arresto e gestione dei container
- Configurazione Docker – Opzioni di configurazione avanzate
- Creare una copia locale del sito WordPress – Tutorial completo