I sistemi di container sono ormai molto diffusi tra gli sviluppatori e le varie piattaforme software. Questo perché consentono di eseguire applicativi in ambienti dedicati e completamente separati dal sistema host. Quest'oggi vogliamo proprio parlarvi di una delle tante utility dedicate al mondo container ovvero Distrobox.
Si tratta sostanzialmente di un wrapper open source per Docker, un'insieme di software che usano l'OS-level virtualization per distribuire e gestire i vari container, e Podman, ovvero un daemonless container engine per lo sviluppo, la gestione e l'esecuzione di OCI (Open Container Initiative) Container sui sistemi Linux. Sostanzialmente Distrobox è uno strumento ideale per eseguire, o realizzare, dei containerized software integranti nelle varie distribuzioni che operano in modo identico ai programmi nativi.
Tramite Distrobox è anche possibile avviare intere distribuzioni tramite shell cosi da poter testare delle specifiche funzionalità oppure operare una serie di debug del proprio applicativo all'interno di un ambiente specifico. Insomma Distrobox consente di ottenere svariati development environment in pochi minuti, anche senza essere in possesso dei privilegi di utente root, sfruttando un unico sistema host in modo similare a quanto avviene con i normali programmi di virtualizzazione.
Distrobox è disponibile nei repository software di diverse distribuzioni, come da esempio Debian e Arch Linux (tramite AUR) ed inoltre è possibile trovarlo anche nel ramo di sviluppo di Ubuntu 22.10. Ovviamente è possibile reperire Distrobox anche tramite un comodo script realizzato dal team di sviluppatori:
curl -s https://raw.githubusercontent.com/89luca89/distrobox/main/install | sudo sh
Ovviamente prima di installare Distrobox è necessario aver già disponibile nel sistema docker oppure podman. Altrimenti il wrapper non funzionerà.
Una volta ultimato il processo di installazione e configurazione, che dovrebbe durare pochi minuti, si può dunque iniziare a realizzare il primo container con il development environment desiderato tramite questo pratico comando:
distrobox-create --name NOME-CONTAINER --image DISTRIBUZIONE:VERSIONE
Volendo fare un esempio più concreto:
distrobox-create --name Ubuntu2210testing --image ubuntu:22.10
Mentre per eseguire il container appena creato basterà tale comando:
distrobox-enter NOMECONTAINER