MariaDB è un server di database gratuito che consente di accedere ai dati utilizzando un linguaggio di interrogazione strutturato (SQL). Offre funzioni di sicurezza come password, controllo degli accessi basato sui ruoli e molto altro ancora per salvaguardare i vostri dati.

Per implementare MariaDB e garantire l’accesso ai dati ai vostri utenti, dovete ospitare il server di database. Potete scegliere un provider cloud o usare servizi di hosting gestiti o condivisi.

Questo articolo vi insegnerà a eseguire MariaDB usando un container Docker, configurare ed eseguire il server di database e collegarlo a un sito web WordPress.

Cos’È Docker?

Docker è uno strumento gratuito per lo sviluppo che consente di eseguire applicazioni in un ambiente controllato chiamato container. I container contengono il codice dell’applicazione, le dipendenze e gli strumenti di sistema fondamentali per l’esecuzione dell’applicazione. Questo vi permette di fornire applicazioni robuste durante tutto il ciclo di vita dello sviluppo del software.

Di solito i container utilizzano il sistema operativo come host. Ciò significa che il kernel della macchina host fornisce l’accesso a risorse come CPU, memoria e file system. Di conseguenza, non è necessaria una virtualizzazione tradizionale come quella delle macchine virtuali. L’uso di Docker per eseguire un’istanza di MariaDB presenta diversi vantaggi:

  • Ha un’impronta digitale ridotta, che garantisce un uso efficiente delle risorse di sistema.
  • È coerente, consentendo agli sviluppatori di eseguire le applicazioni in produzione e nelle distribuzioni di prova con modifiche minime.
  • Fornisce un meccanismo flessibile per la condivisione delle risorse.
  • È scalabile: potete eseguire molti container in un singolo host.

Come Distribuire MariaDB con Docker

In questa sezione, creerete ambienti containerizzati per eseguire MariaDB tramite Docker. Imparerete a conoscere la tecnologia dei container offerta da Docker. Docker funziona sulla maggior parte delle versioni di Windows, macOS e Linux. Per questo tutorial, dovrete avere Windows 10/11, Ubuntu 20.04 o un computer macOS X per poterlo seguire.

1. Installare Docker

Una delle migliori caratteristiche di Docker è la sua portabilità. Usa il sistema operativo dell’host, il che lo rende ideale per gli ambienti di test e pubblicazione. In questa sezione vi spiegheremo come installare Docker su tre sistemi operativi.

Ubuntu 20.04

Per prima cosa, aggiornate l’elenco dei pacchetti di Ubuntu.

sudo apt-get update

Poi, permettete l’accesso ai repository online tramite HTTPS.

sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common

Schermata del Terminal con le istruzioni per l’installazione di Docker.
Successivamente, aggiungete la chiave GPG di Docker.

sudo mkdir -p /etc/apt/keyrings

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

Ora aggiungete il repository di Docker.

echo deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Quindi aggiornate i pacchetti di Ubuntu per includere il repository di Docker.

sudo apt-get update

Infine, installate Docker Engine.

sudo apt-get install docker-ce

Se usate una distribuzione Linux diversa come Debian o Fedora, seguite la documentazione ufficiale per l’installazione di Docker in Linux.

Windows 10/11

Docker è disponibile su Windows 10 o 11 utilizzando Windows Subsystem for Linux versione 2 (WSL 2) come back-end. Per installare Docker, seguite i seguenti passaggi.

Innanzitutto, attivate la funzione Virtual Machine Platform sul vostro sistema Windows. Questo vi permette di installare WSL 2 e di installare ed eseguire un’istanza Linux virtualizzata sul vostro computer Windows.

Successivamente, installate WSL.

Quindi visitate Microsoft Store per scaricare Ubuntu 20.04.

Infine, scaricate Docker Desktop per Windows. Aprite il file scaricato per avviare il processo di installazione.

Dopo l’installazione, cercate “Docker Desktop” nella barra delle applicazioni e apritelo.

(Nota: per usare i comandi di Docker dovrete usare PowerShell come Terminal.)

macOS X

Docker è disponibile sui computer macOS tramite l’App Store di Apple. Sono disponibili due programmi di installazione che si rivolgono sia ai chip Intel che a quelli Apple.

Per prima cosa, scaricate il programma di installazione appropriato da uno dei link precedenti. Poi fate doppio clic per aprire il file .dmg scaricato.

Trascinate l’icona di Docker nella cartella Applications.

A questo punto, aprite l’applicazione Docker dalla cartella Applications e seguite le istruzioni per completare la configurazione.

Una volta completato il processo di installazione, fate doppio clic sull’icona di Docker nella barra di stato del desktop per aprirla.

Usate il Terminal predefinito per eseguire i comandi di Docker.

2. Scaricare un’Immagine di MariaDB

Un’immagine Docker fornisce una raccolta di comandi e configurazioni per creare un contenitore Docker. È responsabile dell’installazione di tutto ciò che serve per eseguire un’applicazione. Potete trovare l’immagine ufficiale di MariaDB su Docker Hub.

Per scaricare l’immagine di MariaDB da Docker Hub, dovrete usare il comando docker pull:

docker pull mariadb

Potete anche visualizzare l’elenco delle immagini Docker scaricate eseguendo il seguente comando:

docker images

Questo è l’output del comando:

Schermata di Docker con lista di immagini.
Elenco delle immagini Docker.

3. Creare un Container

Un container è un’unità software con tutto il codice, le dipendenze e gli strumenti di sistema necessari per eseguire un processo o un programma. Userete l’immagine scaricata in precedenza per creare un contenitore MariaDB.

docker create mariadb --name mariadb-wp -i –t

Questo crea un contenitore MariaDB chiamato mariadb-wp. Il flag –i consente una sessione interattiva, mentre l’opzione –t crea uno pseudo-terminale. La documentazione ufficiale fornisce informazioni su tutte le variabili disponibili.

4. Eseguire, Mettere in Pausa e Fermare il Container

Docker offre agli sviluppatori la flessibilità di ambienti configurabili. In questa sezione, configureremo il contenitore di MariaDB con variabili d’ambiente per impostare proprietà di sistema specifiche per il vostro container.

MariaDB ha molte variabili che potete impostare, come i nomi dei database, le password e gli utenti del database. Per un elenco più ampio delle variabili d’ambiente supportate, consultate la documentazione di Docker per MariaDB.

docker run -d --name mariadb-wp -p 3306:3306 -v '/path/on/host/:/var/lib/mysql' -e "MARIADB_ROOT_PASSWORD=" -e "MARIADB_DATABASE=wordpress" -e "MARIADB_USER=wordpress" -e "MARIADB_PASSWORD=" mariadb

Il comando qui sopra configura la password di root di MariaDB, l’utente del database e la password associata. Quindi esegue MariaDB sulla porta 3306. Potete decidere di mettere in pausa l’applicazione di un container con il seguente comando:

docker pause mariadb-wp

Infine, potete anche arrestare un’applicazione in esecuzione all’interno di un container con il seguente comando:

docker stop mariadb-wp

5. Collegare MariaDB Containerizzato a un Sito WordPress

Ora dobbiamo collegare MariaDB a un sito WordPress esterno. Qui trovate maggiori informazioni sulla creazione di un sito WordPress in locale.

Nella directory principale del sito WordPress, aprite il file wp-config.php nel vostro editor di codice. Individuate la sezione di codice che definisce le variabili per il database e modificatela come mostrato di seguito. Assicuratevi di usare il nome del database, la password e il numero di porta quando create il contenitore MariaDB.

define('DB_NAME', 'wordpress');

define('DB_USER', 'wordpress’);

define('DB_PASSWORD', '');

define('DB_HOST', 'http://localhost:3306’);

Successivamente, dovrete importare un dump del database del vostro sito WordPress nel container MariaDB. Per prima cosa verificate di aver esportato il database attuale del sito web. Per saperne di più, consultate il nostro tutorial sul backup del database MySQL.

Dopo aver esportato il database, installate il dump del database nel container.

docker exec -i mariadb-wp sh -c 'exec mysql -u root -p "$MARIADB_ROOT_PASSWORD" < /some/path/on/your/host/all-databases.sql'

Il comando docker exec permette agli sviluppatori di eseguire comandi di shell all’interno del container. Abbiamo importato un database in MariaDB utilizzando un file esportato con il comando precedente.

6. Aggiungere un Nuovo Articolo al Vostro sito WordPress

Per testare questa integrazione creeremo un articolo di esempio utilizzando l’account di amministrazione di WordPress.

Per prima cosa, accedete a WordPress e fate clic su Articolo > Aggiungi nuovo. Inserite i dettagli come mostrato di seguito, quindi fate clic su Pubblica. Dopo aver creato l’articolo, fate clic su Visualizza articolo per visualizzare l’articolo appena aggiunto.

Animazione di come aggiungere un nuovo articolo nell'editor di WordPress con Gutenberg.
Aggiunta di un nuovo articolo nell’editor di WordPress.

E questo è tutto!

7. MariaDB e Docker con DevKinsta

L’applicazione gratuita di Kinsta, DevKinsta, consente agli sviluppatori di creare siti WordPress containerizzati in modo efficiente. L’applicazione usa Docker per configurare le versioni di PHP, i server di database e i server web. L’applicazione DevKinsta supporta gli sviluppatori che usano macOS, Windows e Ubuntu/Linux.

Per iniziare, scaricate, installate e avviate DevKinsta sul vostro computer locale. L’applicazione vi offre tre opzioni: creare un nuovo sito WordPress, importarne uno esistente da Kinsta o creare un sito personalizzato.

Schermata iniziale di DevKinsta con le opzioni per creare un nuovo sito.
La schermata di DevKinsta per creare un nuovo sito.

Creare un nuovo sito WordPress è davvero facile: basta compilare un semplice modulo e fare clic su Crea sito.

Schermata di DevKinsta con il modulo per creare un nuovo sito WordPress.
La schermata di creazione di un nuovo sito WordPress di DevKinsta.

Congratulazioni: ora avete creato un sito WordPress containerizzato con DevKinsta!

Riepilogo

Docker è uno strumento facile che gli sviluppatori possono usare per containerizzare il software che esegue server di database come MariaDB. I suoi ambienti minimalisti aiutano a mantenere l’efficienza delle risorse di sistema senza sacrificare le funzionalità.

Questo tutorial vi ha mostrato come installare Docker, configurare MariaDB e collegare un sito WordPress al database MariaDB containerizzato. Inoltre avete imparato a usare DevKinsta per creare un sito WordPress completamente containerizzato.

C’è molto altro da esplorare con la creazione di siti WordPress e le sue numerose soluzioni di hosting. Se volete scoprire quanto può essere facile la gestione del vostro sito, l’hosting WordPress gestito di Kinsta pensa a tutto per voi.

Salman Ravoof

Salman Ravoof is a self-taught web developer, writer, creator, and a huge admirer of Free and Open Source Software (FOSS). Besides tech, he's excited by science, philosophy, photography, arts, cats, and food. Learn more about him on his website, and connect with Salman on Twitter.