OrbStack optimise la virtualisation avec Docker et Linux sur macOS

Nicolas Furno |

OrbStack est une app actuellement en bêta qui entend offrir de meilleures performances aux utilisateurs de Docker et de machines virtuelles sous Linux sur le Mac. Ses concepteurs promettent des gains spectaculaires, notamment pour Docker qui a souffert de problèmes de performances par le passé, en particulier sur les modèles avec Apple Silicon. Même si ces problèmes ont pu être corrigés en partie, l’app officielle de Docker reste pensée pour tous les systèmes d’exploitation, elle repose sur Electron pour son interface… bref, elle n’est pas pensée exclusivement pour le Mac.

Image OrbStack.

C’est en revanche le cas d’OrbStack, une app qui n’est pas proposée sur une autre plateforme que celle d’Apple. Ses concepteurs ont ainsi utilisé du code natif pour l’interface et l’app pèse nettement moins lourd une fois installée : moins de 360 Mo sur mon Mac Studio, contre plus de 2 Go pour Docker. Ils mettent aussi en avant des gains de performance impressionnants dans tous les domaines par rapport à l’app officielle de Docker : un temps de lancement divisé par 7,5 (2 secondes contre 15) ou encore une utilisation de la mémoire vive divisée par plus de 11 (moins de 700 Mo contre 8 Go).

Quand une machine virtuelle ne sollicite pas le processeur, la charge CPU devrait aussi être proche de 0 avec OrbStack, alors que Docker peut solliciter jusqu’à 25 % du processeur, toujours selon les développeurs. Enfin, la communication réseau entre le Mac et les conteneurs virtuels serait 17 fois plus élevée, avec des performances qui atteignent les 34 Gbps. Ces chiffres sont impressionnants, même si les développeurs ne détaillent pas les méthodologies, ce qui complique les vérifications. Les plus curieux pourront toutefois en apprendre un petit peu plus sur le fonctionnement interne de l’app à cette adresse.

L’une des comparaisons spectaculaires entre Docker et OrbStack, selon les créateurs d’OrbStack.

Cette fiche support détaille quelques différences concrètes entre Docker Desktop pour macOS et OrbStack. On note dans la liste la gestion par défaut de Rosetta pour exécuter du code x86 sur les Mac Apple Silicon et des fonctions de confort en plus, comme le partage de fichier dans les deux sens. Concrètement, le volume de stockage des machines virtuelles est accessible aisément depuis le Finder et on peut accéder aux données du Mac depuis les machines virtuelles, sans avoir à configurer quoi que ce soit. Les adresses IPv6 sont aussi correctement gérées et la mémoire vive comme le stockage sont gérés à la demande, il n’est pas nécessaire de les bloquer en amont1.

Tous ces avantages peuvent être testés aisément en installant OrbStack, qui est gratuite pendant sa phase de bêta. Il n’est même pas nécessaire de créer un compte ou de laisser un mail, vous pouvez récupérer la version qui correspond à votre Mac à cette adresse et l’utiliser dans la foulée. La version finale sera payante, avec un modèle économique qui n’est pas encore figé, mais qui semble s’orienter vers un abonnement. Il devrait toutefois y avoir des offres destinées aux entreprises et d’autres aux utilisateurs individuels, sans doute avec des tarifs bien différents.

OrbStack nécessite macOS 12.4 au minimum et son interface n’est pas traduite en français.


  1. Si vous utilisez Backblaze, cela peut toutefois poser problème et il faudra exclure les fichiers d’OrbStack.  ↩︎

avatar radeon | 

Une fois de plus ça confirme qu’électron fait payer le prix fort à l’utilisateur en termes de performances pour économiser sur le dev multi plateforme, je déteste ce machin.

Sinon bravo aux développeurs cette appli semble vraiment top, même si la formule d’abonnement sera rédhibitoire pour moi. Dommage.

avatar oomu | 

@radeon

oui.

Electron est membre d'une longue lignée d'outil multiplateforme (donc multi-nazes) pour économiser du temps développeur et donc faire payer le client (par un produit moins bon).

ça fait 40 ANS d'informatique commerciales que c'est ainsi !

Combien de fois voulons nous revivre JAVA, QT et MOTIF ! Une fois de + est beaucoup trop pour une si petite planète.

Pourquoi ? parce que la logique fondamentale d'un tel produit est de faire des Economies (à l'entreprise, pas le client).
Une fois qu'on rentre dans la logique de "faire des économies", ben on ne s'arrête plus. TOUT LE RESTE Y PASSE.

avatar radeon | 

@oomu

Oui et c’est relou, la solution pour docker chez moi c’est un petit pc i5 sous Ubuntu server dans ma baie, avec un serveur vpn pour y accéder quand je ne suis pas a la maison, portainer et watchtower.

avatar valcapri | 

@oomu

QT passe encore, ça reste plus ou moins du natif. Il y a wxwidgets, aussi dans le même genre.

Java pour faire des applications de bureau avec Swing ou AWT, c’est vieux mais quand ça fonctionne, c’est pas mal (suffit de voir IntelliJ). Je suis d’accord, c’est gourmand en ressources mais je sais pas si c’est Swing en lui-même ou toutes les fonctionnalités d’IntelliJ. Mais aussi non, c’est vraiment pas joli et optimisés pour les OS.

Le gros problème d’Electron, c’est que c’est un Chromium modifier pour fonctionner en mode bureau et avec quelques appels systèmes. Donc, si tu as Spotify, Slack, Docker,… c’est comme si tu avais 3 Chrome qui tournait en même temps.

Slack a fait un gros effort d’optimisation avec Electron et depuis un peu plus d’un an, ça va beaucoup mieux.
Je crois que le pire, d’après ce que j’entends, c’est Teams. Surtout sur Windows 11 où 2 Teams cohabite et si j’ai bien compris l’un est fait avec EdgeView2 et l’autre Electron.

avatar fylg | 

Docker desktop est tellement mauvais qu’à ce compte là il vaut mieux installer une VM Linux (rancher os) rien que pour faire tourner ses containers avec un portainer pour gérer le tout.

avatar Liena1 | 

[question bête ] : je pourrais, avec ce soft, avoir une distribution linux sur mon mac ? En gros ?

avatar hirtrey | 

@Liena1

Oui mais tu le peux déjà avec docker, podman, Rancher ….

avatar Darkomen78 | 

Alors oui et non. Une vraie installation linux c'est pas par Docker ou autre système de conteneurs, c'est en montant une VM.

avatar oomu | 

@Liena1

en gros ? non.

mais si vous voulez juste un applicatif que vous auriez fait avec une distribution linux, oui.

avatar cassis2k | 

@Liena1

Avec UTM tu peux déjà le faire et c’est gratuit 😉

https://github.com/utmapp/UTM

avatar ech1965 | 

Curieux d'avoir une idée du prix futur... Le peu d'info dans la doc laisse peu d'espoir à une alternative à l'abonnement...

avatar vincentn | 

Après on pourrait avoir un mix de ce genre :

- Une version gratuite mais limitée à 1 (ou deux) conteneurs Docker. Permet de tester ou au particulier qui n'a pas d'énormes besoins, de l'utiliser.
- Une version payante intermédiaire, pour les usagers plus avancés, supportant, par exemple, toutes les fonctionnalités Docker/Kubernetes (mais pas les VM) et un support via un forum.
- Une version par abonnement, pour les pros/développeurs, avec toutes les fonctionnalités (Docker/Kubernetes, VM…) et le support qui va avec.

avatar pat3 | 

@vincentn

Pas sûr que ce qui t’arrangerait les arrangera 🙂

avatar Liena1 | 

Merci :-)

CONNEXION UTILISATEUR