Utiliser Docker pour disposer d'un bash Linux fonctionnel sous macOS

Publié initialement à : https://korben.info/utiliser-docker-pour-disposer-dun-bash-linux-fonctionnel-sous-macos.html

Je voulais un Shell Linux sous macOS pour balancer quelques commandes et faire des tests dans une VM, mais je vous avoue que je trouve la GUI Virtualbox un peu lourdingue pour ça. Surtout que je n’ai pas besoin de GUI, juste d’un Shell. J’ai donc regardé Docker d’un peu plus près et je dispose…

Plus léger que docker tu as Singularity. L’avantage est qu’il n’a pas besoin de daemon pour fonctionner à l’instar de docker (plus sécure). De fait, il est très apprécié sur les clusters de calculs, car il n’y a pas besoin de harceler les admins pour avoir son programme d’installé.

Il y a une version MacOS (beta) qui est disponible.

Pour avoir un bash il te suffit de faire un :
singularity shell docker://ubuntu

Oui vous avez bien vu, il est compatible avec les conteneurs docker :slight_smile:

À voir sous MacOS, mais sous Linux, il monte automatiquement (entre autres) votre home.

Bonne découverte

Seb

1 J'aime

Pour info avec virtualbox, même si ça reste effectivement plus lourd que docker, il est quand même possible de contrôler les VMs sans dégainer la GUI.

pour démarrer une VM par son nom ou id (stable) depuis un shell
$ vboxmanage startvm nom|id

pour récupérer l’id d’une VM
$ vboxmanage list vms

Je m’en sers sous linux et windows, pas testé sous mac. Pour les utilisateurs biberonnés à la CLI, l’outil vboxmanage permet une foultitude d’autres choses.

1 J'aime

Je croyais que MacOs était sous base Unix et que l’acces à un shell y était natif.
Je suis un peu étonné qu’il faille faire tout ça du coup.

C’est ça, avec le terminal + brew tu peux faire déjà beaucoup. Maintenant si tu as besoin d’installer un packet spécifique à une distribution et/ou de l’exécuter dans un environment isolé pour éviter de tout casser, les solutions proposées plus haut le permettent.