Contieni i tuoi dati: esegui MariaDB con Docker

Pubblicato: 2022-10-25

MariaDB è un server di database gratuito che fornisce l'accesso ai dati utilizzando un linguaggio di query strutturato (SQL). Offre funzionalità di sicurezza come password, controllo degli accessi basato sui ruoli e molto altro per salvaguardare i tuoi dati.

Per distribuire MariaDB e concedere l'accesso ai dati ai tuoi utenti, devi ospitare il server del database. Puoi optare per un provider cloud o utilizzare servizi di hosting gestito o condiviso.

Questo articolo ti insegnerà come eseguire MariaDB utilizzando un contenitore Docker, configurare ed eseguire il server di database e collegarlo a un sito Web WordPress.

Cos'è Docker?

Docker è uno strumento per sviluppatori gratuito che consente di eseguire applicazioni in un ambiente controllato chiamato container. I contenitori dispongono di codice dell'applicazione, dipendenze e strumenti di sistema critici per l'esecuzione dell'app. Ciò consente di fornire applicazioni robuste durante tutto il ciclo di vita dello sviluppo del software.

Di solito, i container utilizzano il tuo 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, ciò non richiede la virtualizzazione tradizionale come le macchine virtuali. Esistono diversi vantaggi nell'utilizzo di Docker per eseguire un'istanza MariaDB:

  • Ha una piccola impronta digitale, garantendo un uso efficiente delle risorse di sistema.
  • È coerente, consentendo agli sviluppatori di eseguire app in produzione e testare le distribuzioni con modifiche minime.
  • Fornisce un meccanismo flessibile per la condivisione delle risorse.
  • È scalabile: puoi eseguire molti contenitori in un unico host.

Come distribuire MariaDB con Docker

In questa sezione creerai ambienti containerizzati per eseguire MariaDB utilizzando Docker. Imparerai a conoscere la tecnologia dei container offerta da Docker. Docker funziona sulla maggior parte delle versioni delle distribuzioni Windows, macOS e Linux. Per questo tutorial, dovrai avere Windows 10/11, Ubuntu 20.04 o una macchina macOS X da seguire.

1. Installa Docker

Una delle migliori caratteristiche di Docker è la sua portabilità. Utilizza il sistema operativo dell'host, il che lo rende ideale per ambienti di test e pubblicazione. Questa sezione ti insegnerà come installare Docker sui tre sistemi operativi.

Ubuntu 20.04

Innanzitutto, aggiorna l'elenco dei pacchetti di Ubuntu.

 sudo apt-get update

Quindi, consenti l'accesso ai repository online tramite HTTPS.

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

Installazione della finestra mobile tramite il terminale.
Quindi, aggiungi 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 aggiungi 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, aggiorna i pacchetti di Ubuntu per includere il repository di Docker.

 sudo apt-get update

Infine, installa Docker Engine.

 sudo apt-get install docker-ce

Se stai utilizzando una distribuzione Linux diversa come Debian o Fedora, segui la documentazione ufficiale per l'installazione di Docker in Linux.

Windows 10/11

Docker è disponibile su Windows 10 o 11 utilizzando il sottosistema Windows per Linux versione 2 (WSL 2) come back-end. Utilizzare i seguenti passaggi per installare Docker.

Innanzitutto, abilita la funzione Virtual Machine Platform sul tuo sistema Windows. Ciò ti consente di installare WSL 2 e installare ed eseguire un'istanza Linux virtualizzata sulla tua macchina Windows.

Quindi, installa WSL.

Quindi, visita il Microsoft Store per scaricare Ubuntu 20.04.

Infine, scarica Docker Desktop per Windows. Apri il file scaricato per avviare il processo di installazione.

Dopo l'installazione, cerca "Docker Desktop" dalla barra delle applicazioni e aprilo.

( Nota: dovrai utilizzare PowerShell come terminale per utilizzare i comandi Docker.)

macOS X

Docker è disponibile su macchine macOS tramite l'App Store di Apple. Sono disponibili due programmi di installazione che prendono di mira sia i chip Intel che quelli Apple.

Innanzitutto, scarica il programma di installazione appropriato da uno dei collegamenti sopra. Quindi, fai doppio clic per aprire il file .dmg scaricato.

Quindi, trascina e rilascia l'icona Docker nella cartella Applicazioni .

Ora apri l'app Docker dalla cartella Applicazioni e segui le istruzioni per completare la configurazione.

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

Utilizzare il terminale predefinito per eseguire i comandi Docker.

2. Scarica un'immagine MariaDB

Un'immagine Docker fornisce una raccolta di comandi e configurazioni per creare un contenitore Docker. È responsabile dell'installazione di tutto il necessario per eseguire un'applicazione. Puoi trovare l'immagine ufficiale di MariaDB da Docker Hub.

Per scaricare l'immagine di MariaDB da Docker Hub, dovrai utilizzare il comando docker pull :

 docker pull mariadb

Puoi anche visualizzare un elenco di immagini Docker scaricate eseguendo quanto segue:

 docker images

Questo è l'output del comando:

Elenco delle immagini Docker.
Elenco delle immagini Docker.

3. Crea un contenitore

Un container è un'unità software con tutto il codice, le dipendenze e gli strumenti di sistema necessari per eseguire un processo o un programma. Utilizzerai 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 e l'opzione –t crea uno pseudo-terminale. La documentazione ufficiale fornisce informazioni su tutte le variabili disponibili.

4. Eseguire, mettere in pausa e arrestare il contenitore

Docker offre agli sviluppatori la flessibilità degli ambienti configurabili. In questa sezione, configureremo il container di MariaDB con le variabili di ambiente per impostare proprietà di sistema specifiche per il tuo container.

MariaDB ha molte variabili che puoi impostare, come nomi di database, password e utenti di database. Per un elenco più ampio delle variabili di ambiente supportate, fare riferimento alla 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 precedente configura la password di root, l'utente del database e la password associata di MariaDB. Quindi esegue MariaDB sulla porta 3306. Puoi decidere di sospendere l'esecuzione dell'applicazione di un container con il comando seguente:

 docker pause mariadb-wp

Infine, puoi anche interrompere un'applicazione in esecuzione all'interno di un contenitore utilizzando il comando seguente:

 docker stop mariadb-wp

5. Collega il MariaDB containerizzato a un sito WordPress

Ora, dobbiamo connettere MariaDB a un sito Web WordPress esterno. Puoi saperne di più sulla creazione di un sito Web WordPress in locale qui.

Nella directory principale del sito Web di WordPress, apri il file wp-config.php nel tuo editor di codice. Individua la sezione del codice che definisce le variabili per il database e modificala, come mostrato di seguito. Assicurati di utilizzare il nome del database, la password e il numero di porta durante la creazione del contenitore MariaDB.

 define('DB_NAME', 'wordpress'); define('DB_USER', 'wordpress'); define('DB_PASSWORD', ''); define('DB_HOST', 'http://localhost:3306');

Successivamente, devi importare un dump del database del tuo sito Web WordPress nel MariaDB containerizzato. Innanzitutto, assicurati di aver esportato il database corrente per il sito Web. Per saperne di più, dai un'occhiata al nostro tutorial sul backup del database MySQL.

Dopo aver esportato il database, installa il dump del database all'interno del contenitore.

 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 consente agli sviluppatori di eseguire comandi shell all'interno del contenitore. Abbiamo importato un database in MariaDB utilizzando un file esportato nel comando precedente.

6. Aggiungi un nuovo post al tuo sito WordPress

Creeremo un post di esempio utilizzando l'account amministratore di WordPress per testare questa integrazione.

Innanzitutto, accedi a WordPress e fai clic su Post > Aggiungi nuovo . Inserisci i dettagli come mostrato di seguito, quindi fai clic su Pubblica . Dopo aver creato il post, fai clic su Visualizza post per visualizzare il post appena aggiunto.

Aggiunta di un nuovo post nell'editor Gutenberg di WordPress.
Aggiunta di un nuovo post nell'editor di WordPress.

E questo è tutto quello che c'è da fare!

7. MariaDB e Docker con DevKinsta

L'applicazione gratuita di Kinsta, DevKinsta, consente agli sviluppatori di creare siti WordPress containerizzati in modo efficiente. L'app utilizza Docker per configurare versioni PHP, server di database e server Web. L'app DevKinsta supporta gli sviluppatori che utilizzano macOS, Windows e Ubuntu/Linux.

Per iniziare, scarica, installa e avvia DevKinsta sul tuo computer locale. L'app offre tre opzioni: creare un nuovo sito WordPress, importarne uno esistente da Kinsta o creare un sito personalizzato.

La nuova schermata di creazione di un nuovo sito di DevKinsta.
La nuova schermata di creazione di un nuovo sito di DevKinsta.

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

La nuova schermata di creazione del sito WordPress di DevKinsta.
La nuova schermata di creazione del sito WordPress di DevKinsta.

Congratulazioni: ora hai creato un sito Web WordPress containerizzato utilizzando DevKinsta!

Riepilogo

Docker è uno strumento intuitivo per gli sviluppatori per la containerizzazione di software che esegue server di database come MariaDB. I suoi ambienti minimalisti aiutano a mantenere l'efficienza delle risorse di sistema senza sacrificare la funzionalità.

Questo tutorial ti ha insegnato come installare Docker, configurare MariaDB e connettere un sito WordPress con il tuo database MariaDB containerizzato. Inoltre, hai imparato a utilizzare DevKinsta per creare un sito Web WordPress completamente containerizzato.

C'è molto altro da esplorare con la creazione di siti WordPress e le sue numerose soluzioni di hosting. Se stai cercando di scoprire quanto può essere facile la gestione del tuo sito, l'hosting WordPress gestito da Kinsta è quello che fa per te.