Ogni settimana circa, su Hashicorp Atlas, viene visualizzata una nuova versione della scatola base ufficiale di Ubuntu Trusty x64 per Vagrant: https://atlas.hashicorp.com/ubuntu/boxes/trusty64
Presumibilmente, per coerenza ripetibile, tutto è stato automatizzato.
So che ci sono post di blog generici su come una scatola base di Vagrant può essere costruita, ma sono più interessato a come sono costruite queste scatole. Spero che, come il resto dell’ecosistema di Ubuntu che ho incontrato, il processo per build queste scatole sia tutto pubblico open source.
Aggiornare:
Sono interessato in particolare alle opzioni scelte durante l’installazione del sistema operativo Ubuntu e tutte le modifiche post installazione del sistema operativo che sono state apportate prima di confezionare la scatola.
I dettagli sull’utilizzo di Vagrant, Packer o altri strumenti per impacchettare la macchina in una scatola sono molto meno importanti.
Sarebbe corretto che il processo di compilazione per le immagini di Ubuntu sia tutto aperto!
Guarda il pacchetto livecd-rootfs per come sono costruite le immagini:
In particolare:
E questo è probabilmente quello che stai cercando:
Non sono sicuro di cosa stai chiedendo e perché.
Il processo per build una scatola Ubuntu, o qualsiasi altra scatola, è tutto open source pubblico. Creare una VM, installare un sistema operativo, configurarlo per Vagrant, comprimerlo e distribuirlo. I ragazzi di HashiCorp non avrebbero potuto fare nulla di diverso rispetto al resto di noi. Avrebbero potuto installare pacchetti aggiuntivi (oltre a quelli installati automaticamente durante l’installazione di una Ubuntu pulita e fresca e quelli necessari per interagire con Vagrant). Avrebbero potuto usare il sistema di provisioning di Vagrant per aggiornare la scatola, dopo di che hanno riconfezionato e ridistribuito. O hanno usato Packer. Ad ogni modo, l’automazione di cose come questa è il core business di HahiCorp, suppongo.
Magari consultate Atlas ( https://atlas.hashicorp.com/ ) e l’account GitHub di Mitchell Hashimoto per ulteriori informazioni su come Vagrant è usato.