Dopo aver istallato e avviato l'immagine di MySQL è il momento di eseguire WordPress. Per prima cosa è necessario procurarsi la versione di WordPress da testare. Il seguente comando scarica e istalla l'ultima versione stabile:
docker pull wordpress
Per la configurazione dell'immagine di WordPress sono disponibili le seguenti variabili d'ambiente:
Variabile | Descrizione |
---|---|
WORDPRESS_DB_HOST |
Host del database. Il valore predefinito è dato da indirizzo IP e numero di porta del container MySQL collegato. |
WORDPRESS_DB_USER , WORDPRESS_DB_PASSWORD |
Individuano l'utente del database per WordPress. L'utente predefinito è root . |
WORDPRESS_DB_NAME |
Nome del database. Il valore predefinito è wordpress . |
WORDPRESS_TABLE_PREFIX |
Prefisso delle tabelle d'istallazione. Va impostata solo se si vogliono sovrascrivere le impostazioni predefinite del file wp-config.php. |
WORDPRESS_AUTH_KEY , WORDPRESS_SECURE_AUTH_KEY , WORDPRESS_LOGGED_IN_KEY , WORDPRESS_NONCE_KEY , WORDPRESS_AUTH_SALT , WORDPRESS_SECURE_AUTH_SALT , WORDPRESS_LOGGED_IN_SALT , WORDPRESS_NONCE_SALT |
Chiavi di sicurezza dell'istallazione. |
Per maggiori informazioni sulla configurazione, si fa rinvio ai capitoli sulle impostazioni di base e avanzate di WordPress.
È il momento di avviare WordPress. Si avvii il Docker Quickstart Terminal e, da linea di comando, ci si collochi nella directory che ospiterà il progetto. Si verifichi quindi che non sia già in esecuzione il container MySQL (vedi il capitolo precedente). A questo scopo si esegua il comando:
docker ps
É possibile rimuovere i container attivi come già illustrato nel precedente capitolo, oppure rimuoverli tutti con un solo comando:
docker rm -f $(docker ps -aq)
Se il container MySQL non è già in esecuzione, si avvierà come segue:
docker run --name wordpressdb -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=wordpress -d mysql:5.7
Questo comando avvia MySQL, imposta la password per l'utente root, assegna un nome al database che si utilizzerà nel progetto, esegue in background la versione 5.7 di MySQL. Il passo successivo è l'avvio dell'immagine di WordPress:
docker run --name wordpress -e WORDPRESS_DB_USER=root -e WORDPRESS_DB_PASSWORD=root --link wordpressdb:mysql -v -p 127.0.0.1:8080:80 "$PWD/":/var/www/html -d wordpress
Argomento | Descrizione |
---|---|
docker run |
Avvia l'esecuzione dell'immagine. |
--name wordpress |
Assegna il nome al nuovo container. |
-e WORDPRESS_DB_USER=root |
Imposta l'utente del database per WordPress. |
-e WORDPRESS_DB_PASSWORD=root |
Imposta la password per l'utente corrente. |
--link wordpressdb:mysql |
Crea un link verso un container. |
-p 127.0.0.1:8080:80 |
Espone la porta 8080 del container alla porta 80 sull'IP 127.0.0.1 dell'host. |
-v "$PWD/":/var/www/html |
Monta il volume della directory corrente nel container. |
-d |
Imposta l'esecuzione del container in background. |
wordpress |
Nome dell'immagine da eseguire. |
Se tutto è stato eseguito correttamente, nella directory del progetto sarà presente un'istallazione di WordPress, a questo punto sarà possibile digitare l'indirizzo IP specificato nella barra degli indirizzi del browser per avviarlo.
Operare da linea di comando non è sempre la soluzione ideale, soprattutto quando si lavora su progetti complessi. Su alcuni sistemi, inoltre, potrebbe essere necessaria un'attenta configurazione dell'host.
Nei prossimi capitoli si vedrà rendere tutto più semplice e automatizzare le operazioni descritte grazie agli strumenti di Docker più avanzati: Docker compose, i Dockerfile e l'interfaccia grafica di Kitematic.