Docker si adatta bene all’uso rapido di MariaDB. Prima scarica un’immagine adatta, poi configura e avvia il container con le impostazioni desiderate. In questo modo, puoi testare o sviluppare indipendentemente dal sistema host in un ambiente controllato.

Vantaggi degli ambienti MariaDB con Docker

Docker offre un modo semplice per fornire MariaDB in ambienti isolati. Puoi avviare le istanze rapidamente e testare diverse versioni in maniera indipendente. In questo modo risparmi tempo, eviti conflitti con installazioni locali e crei condizioni riproducibili per sviluppo e test.

Quali sono i requisiti?

Prima di iniziare, assicurati che siano soddisfatte le seguenti condizioni:

  • Docker è installato e in esecuzione sul tuo sistema
  • Accesso a una riga di comando (terminale, PowerShell, ecc.) con permessi di amministratore
  • Opzionale per MariaDB: Docker Compose per configurazioni più complesse
Managed Database Services
Concentrati sul tuo progetto, noi pensiamo al resto
  • Partner IONOS Cloud
  • Soluzioni flessibili e su misura
  • Data center situati in Europa

Installazione di MariaDB su Docker: guida

Ti mostriamo di seguito come installare MariaDB su Docker in pochi passaggi. Per configurare Docker, puoi seguire il nostro tutorial su Docker.

Primo passaggio: installare Docker

Se non hai ancora installato Docker, puoi configurarlo tramite lo script di installazione ufficiale:

curl -sSL https://get.docker.com/ | sh
bash

Su Windows o macOS è consigliato usare Docker Desktop. Dopo l’installazione riuscita, verifica il funzionamento con:

docker --version
bash

L’output dovrebbe mostrare un numero di versione, ad esempio Docker version 27.5.1, build cb74dfcd. Se è così, hai configurato Docker correttamente.

Secondo passaggio: scaricare l’immagine MariaDB

Ora scarica l’immagine ufficiale MariaDB su Docker da Docker Hub. Questa contiene un’istanza di MariaDB completamente preconfigurata.

docker pull mariadb:latest
bash

Se preferisci una versione specifica, puoi anche specificarla esplicitamente, per esempio:

docker pull mariadb:10.11
bash

Puoi verificare tutte le immagini salvate in locale con il seguente comando:

docker images
bash

La riga con mariadb e il relativo tag dovrebbe apparire nell’elenco.

Terzo passaggio: avviare il container di MariaDB su Docker

Ora crea il container. Utilizza il comando:

docker run --name mariadb-container -e MYSQL_ROOT_PASSWORD=password -d -p 3306:3306 mariadb:latest
bash
  • --name mariadb-container: assegna un nome al container, che può essere utilizzato per riferirsi a esso nel sistema.
  • -e MYSQL_ROOT_PASSWORD=password: imposta la password di root del database MariaDB. Avrai bisogno di questa per accedere successivamente.
  • -d: avvia il container in background (modalità distaccata), così la tua console rimane libera.
  • -p 3306:3306: collega la porta predefinita del database del container alla stessa porta sul tuo sistema locale, in modo da poter accedere con i client.

Dopo aver eseguito questo comando, Docker dovrebbe avviare il container. Per verificare lo stato, inserisci:

docker ps
bash

Nell’elenco dei container in esecuzione dovrebbe apparire mariadb-container con lo stato Up. Se il container non funziona come previsto, puoi visualizzare i file di log con:

docker logs mariadb-container
bash

L’output dei log ti aiuta a identificare eventuali errori di configurazione.

Quarto passaggio: stabilire l’accesso a MariaDB

Una volta che il container MariaDB su Docker è in esecuzione, puoi accedere al database con un client compatibile MySQL come lo strumento MySQL standard o strumenti grafici come DBeaver, HeidiSQL o Beekeeper Studio.

Usa ad esempio il seguente comando nella riga di comando:

mysql -h 127.0.0.1 -P 3306 -u root -p
bash

Ti verrà richiesto di inserire la password. Inserisci la password che hai impostato con MYSQL_ROOT_PASSWORD.

Se tutto funziona, avrai accesso alla console di MariaDB su Docker. Lì potrai eseguire i comandi SQL come di consueto:

SHOW DATABASES;
sql

Vedrai un elenco dei database standard e ora puoi creare i tuoi database o le tue tabelle.

Compute Engine
La soluzione IaaS ideale per i tuoi carichi di lavoro
  • vCPU estremamente vantaggiose e potenti core dedicati
  • Massima flessibilità senza periodo contrattuale minimo
  • Servizio di assistenza tecnica 24 ore su 24, 7 giorni su 7

Quinto passaggio: proteggere i dati persistenti con i volumi

Per impostazione predefinita, i dati nel container sono volatili. Per proteggere i tuoi dati durante i riavvii o i cambiamenti di container, dovresti utilizzare un volume:

docker run --name mariadb-container -e MYSQL_ROOT_PASSWORD=password -d \
    -v mariadb_data:/var/lib/mysql \
    -p 3306:3306 mariadb:latest
bash

-v mariadb_data:/var/lib/mysql crea un volume Docker chiamato mariadb_data e lo collega alla directory in cui MariaDB memorizza i suoi dati.

Puoi visualizzare i volumi memorizzati in qualsiasi momento con il seguente comando:

docker volume ls
bash

E con questo comando, puoi ispezionare il contenuto di un volume:

docker volume inspect mariadb_data
bash

Sesto passaggio: gestire MariaDB con Docker Compose

Per configurazioni più complesse, dovresti utilizzare Docker Compose. Crea quindi un file docker-compose.yml con il seguente contenuto:

version: '3.1'
services:
    mariadb:
        image: mariadb:latest
        container_name: mariadb-compose
        environment:
            MYSQL_ROOT_PASSWORD: password
            MYSQL_DATABASE: example_db
        ports:
            - "3306:3306"
        volumes:
            - mariadb_data:/var/lib/mysql
volumes:
    mariadb_data:
yaml

Avvia l’ambiente con:

docker-compose up -d
bash

Successivamente, MariaDB sarà in esecuzione permanente in background, inclusa la memoria persistente e il database preconfigurato.

Settimo passaggio: arrestare, avviare ed eliminare i container

La gestione dei container è molto semplice con Docker. Puoi arrestare o riavviare in qualsiasi momento il container di MariaDB su Docker senza perdita di dati, a condizione che tu utilizzi i volumi.

Arrestare il container:

docker stop mariadb-container
bash

Avviare il container:

docker start mariadb-container
bash

Rimuovere il container:

docker rm mariadb-container
bash

Eliminare il container insieme al volume:

docker rm -v mariadb-container
bash

Ottavo passaggio: riavvio automatico del container

Per garantire che il tuo container MariaDB su Docker si riavvii automaticamente dopo un riavvio del sistema host, puoi impostare una condizione di riavvio (Restart Policy):

docker run --name mariadb-container -e MYSQL_ROOT_PASSWORD=password \
    -v mariadb_data:/var/lib/mysql \
    -p 3306:3306 \
    --restart unless-stopped \
    -d mariadb:latest
bash

--restart unless-stopped garantisce che il container si avvii automaticamente dopo un riavvio del sistema, a meno che non sia stato arrestato manualmente.

Hai trovato questo articolo utile?
Vai al menu principale