Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Adminer su Raspberry Pi con Docker

Adminer: impariamo ad installare su Raspberry Pi, tramite Docker, questa soluzione per la gestione visuale dei database
Adminer: impariamo ad installare su Raspberry Pi, tramite Docker, questa soluzione per la gestione visuale dei database
Link copiato negli appunti

La gestione dei database fa parte dei compiti di uno sviluppatore software o di un sysadmin. In particolare l'RDBMS (Relational Database Management System) MySQL è impiegato in molti applicativi aziendali, viene sfruttato in decine di applicazioni che utilizziamo quotidianamente e permette il funzionamento di milioni di siti Web. Per questa ragione negli anni siano state sviluppate diverse soluzioni per amministrare database tramite GUI intuitive ed accessibili da più device differenti.

L'esempio più noto è sicuramente phpMyAdmin, un progetto open source che permette di creare e amministrare database MySQL, o MariaDB, tramite una Web interface scritta in PHP ed un Web server.

Esistono numerose alternative a phpMyAdmin e quest'oggi vogliamo parlarvi di Adminer. Si tratta di un database management tool Web based open source nato come fork ed evoluzione di phpMyAdmin. Il suo team lo ha sviluppato in modo tale da essere leggero e minimale. È composto infatti da un singolo file PHP.

Adminer può gestire database generati con MariaDB, PostgreSQL, SQLite e MongoDB oltre ovviamente a MySQL. Rispetto a phpMyAdmin potrebbe apparire più spartano ma ciò assicura performance ottimali in quanti più contesti possibili.

Vediamo quindi come installare ed utilizzare Adminer all'interno di un container Docker che opera su Raspberry Pi. Questa configurazione consente di rendere accessibile Adminer in tutta la rete LAN e può essere utile a livello didattico per imparare a conoscere Adminer.

La procedura descritta è adatta a tutti, anche a chi è venuto in possesso da poco di un Raspberry Pi e sta iniziando a studiare programmazione, gestione database o sistemi Linux.

Dotazione hardware

Per realizzare il progetto basta usare Raspberry Pi 4 o "riciclare" un vecchio Raspberry Pi 3. Ovviamente per il primo wizard di configurazione dovremo dotarci anche di scheda microSD, mouse, tastiera, monitor, alimentatore e cavo ethernet cat6.

Installazione di Raspberry Pi OS

Partiamo con la configurazione iniziale di Raspberry Pi OS. Per l'installazione del sistema operativo è poi necessario un imaging tool come Raspberry Pi Imager, semplicissima utility con cui effettuare il flash di Raspberry Pi OS nella microSD.

Avviamo quindi Raspberry Pi Imager e selezioniamo l'opzione "Choose OS" per scegliere il media d'installazione scaricato. Poi selezioniamo "Choose Storage" cosi da far capire al tool quale microSD utilizzare per il processo. Infine, avviamo il tutto tramite il tasto "Write".

Il procedimento di flash non dovrebbe durare più di qualche minuto anche se le tempistiche possono variare, anche di modo notevole, a seconda del modello di microSD e alla porta USB/adattatore utilizzato.

Una volta terminata la procedura il programma indica che possiamo disconnettere la microSD dal PC ed inserirla sul device per avviare il primo wizard di configurazione della distribuzione.

Installazione di Docker su Raspberry Pi OS

Dopo aver ottenuto l'accesso a Raspberry Pi OS partiamo subito con l'installazione dei pacchetti di Docker, il sistema di container open source su cui verrà eseguito Adminer.

Verifichiamo quindi di avere l'ultima release del sistema operativo e dei vari programmi installati, controllando la presenza di update nei repository software con APT (Advanced Packaging Tool):

sudo apt update && sudo apt upgrade

poi reperiamo lo script per l'installazione di Docker con curl:

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

successivamente installiamo il tutto:

sudo sh get-docker.sh

Per il corretto funzionamento di Docker aggiungiamo il nostro utente al gruppo apposito:

sudo usermod -aG docker nomedelnostroutente

Indichiamo quindi al sistema di avviare Docker al boot e di tenerlo sempre attivo in backgroud:

sudo systemctl enable docker.service && sudo systemctl enable containerd.service

Configurazione del file Docker compose di Adminer

Ora andiamo a creare le directory dove saranno ospitati i file del container:

sudo mkdir -p /opt/stacks/adminer

spostiamoci poi all'interno del percorso indicato:

cd /opt/stacks/adminer

e successivamente generiamo il file docker compose di Adminer tramite l'editor di testo nano:

sudo nano compoose.yaml

Tale file dove essere impostato in questo modo:

version: '3.1'
services:
adminer:
image: adminer
restart: always
ports:
- 8080:8080

Se necessitiamo di operare con una porta diversa da 8080, perché magari esiste già un altro servizio Web che la sta usando, possiamo indicare nel file il numero di quella che preferiamo.

Salviamo le modifiche con CTRL+O e chiudiamo nano con CTRL+X. Fatto questo possiamo avviare finalmente Docker:

docker compose up -d

Accesso all'interfaccia Web di Adminer

Siamo quindi pronti per accedere all'interfaccia Web di Adminer. Per farlo è sufficiente aprire il nostro browser preferito e digitare il link seguente nella barra degli URL:

http://IPDELRASPBERRYPI:8080

Nel caso in cui non si conoscesse l'indirizzo IP locale del device non c'è da preoccuparsi. Si può reperire facilmente tale informazione con questo comando per bash:

hostname -I

Come output si riceverà appunto un IP locale come questo:

192.168.1.12

La porta 8080 è quella di default ma, ovviamente, la si può modificare in base alle proprie esigenze. Ecco un URL d'esempio

http://192.168.1.12:8080

Ora dovrebbe avviarsi la WebGUI di Adminer.

Aggiornare Adminer

Se desideriamo eseguire l'upgrade di Adminer quando vengono rilasciati nuovi aggiornamenti del progetto possiamo farlo sfruttando Docker. Posizioniamoci nella sua directory:

cd /opt/stacks/adminer

Lanciamo poi la richiesta di aggiornamento:

docker compose pull

e riavviamo Docker:

docker compose up -d

Come potete notare è tutto molto semplice, anche coloro che non hanno dimestichezza con le distribuzioni Linux ed il sistema di container Docker possono adottare tale configurazione software per iniziare a sperimentare con i database su di un Raspberry Pi.

In parallelo ad Adminer è possibile installare tutta una serie di tool a corredo. Ad esempio per eseguire un server in ambiente LAMP con WordPress o un Syslog Server con cui monitorare l'attività delle applicazioni in esecuzione.

Ti consigliamo anche