Developpez.com

Le Club des Développeurs et IT Pro

Microsoft annonce le développement d'un client Docker natif pour Windows

Qui sera pris en charge par les futures versions de Windows Server

Le 2014-10-16 14:45:04, par Cedric Chevalier, Expert éminent sénior
Microsoft fait un pas de plus vers l’open source, avec l’annonce officielle du développement d’un client Docker natif pour Windows Server. C’est une initiative née du partenariat entre le géant de Redmond et l’équipe de développement derrière le projet Docker.

Docker est un container d’applications, autrement dit, une application qui permet de virtualiser l’environnement d’exécution du système d’exploitation d’une machine hôte, pour d’autres applications. Un tutoriel explicatif et détaillé de l’outil est d’ailleurs disponible sur cette page.

Jusqu’à présent, Microsoft s’était contenté d’offrir un support pour la prise en charge de Docker par les machines virtuelles Linux, hébergées sur sa plateforme Cloud Microsoft Azure. Une version cliente Windows n’existait pas jusqu’ici.

Avec ce nouveau partenariat, Microsoft entend non seulement offrir un client Docker natif pour Windows Server, ainsi que la prise en charge de Microsoft Azure et des API du Container Open Source.

Les développeurs .NET, ASP.NET, PowerShell peuvent désormais bénéficier des avantages du container, pour le déploiement rapide et aisé de leurs applications sur la plateforme Windows, au même titre que ceux de Linux.

Microsoft entend également intégrer le Hub de Docker au portail de management d’Azure, ainsi qu’à sa galerie. Par ailleurs, les containers de Windows seront développés sous l’égide de la communauté Docker. Microsoft se placera ainsi comme membre actif de la communauté. Les containers Windows seront accessibles depuis le même portail que ceux de Linux.

Source: Blog AZURE

Et vous ?

Allez-vous utiliser ce client Docker natif de Windows ?
  Discussion forum
40 commentaires
  • imikado
    Rédacteur
    Attention, comme indiqué précédement: docker s'appuie sur une techno de virtualisation (sorte de chroot de processus) linux: LXC, je ne sais pas comment ils vont faire sous windows serveur, mais il y aura en hôte un linux et non un windows
  • imikado
    Rédacteur
    Plutôt oui
    Ah moins que Microsoft arrive à créer un équivalent de LXC + pont linux pour windows
  • Joohbug
    Futur Membre du Club
    En tant que touriste dans le domaine de l'informatique, j'aurais une petite question : Est ce qu'on peut imaginer un pc du réseaux sous linux lancer une appli windows en accédant au docker du serveur windows ? On utiliserait les ressources matériel du serveur ?
  • Joohbug
    Futur Membre du Club
    Ah ok ! Donc c'est exactement l'inverse ^^
  • rthomas
    Membre du Club
    Docker et Wine c'est un peu la même chose non?
  • imikado
    Rédacteur
    Envoyé par rthomas
    Docker et Wine c'est un peu la même chose non?
    Pas du tout: wine permet de lancer sous GNU/LInux des applications windows en utilisant des libraries windows.
    Docker permet, en s'appuyant sur LXC de virtualiser plusieurs instances d'OS sans réellement le faire: on est plus proche de virtualbox sur le concept:

    Sauf que pour virtualbox, quand vous lancez 3 serveurs GNU/Linux, votre ordinateur va consommer les ressources de 3 OS simulatanées tant processeur que RAM.
    Ici avec LXC, il n'y qu'une couche OS de lancer, les processus, eux, sont isolés.

    Par exemple imaginez que vous avez 3 serveurs: un web, un mysql, et un serveur ftp:

    Sous virtualbox, vous installez 3 machine virtuelles debian, sur chacune d'entre elle vous installez un des serveur applicatif et quand vous lancez les 3, vous avez 3x debian de lancées (couche basse, couche réseau, couche système de fichiers...) + pour chacune le serveur applicatif

    Sous docker: deux choses,
    1. vous installez pas "en dur" les 3 VMS: vous récupérez un iso de debian, puis vous allez avoir 3 scripts, un par installation
    Sur chaque script vous allez dire en gros "installe moi mon serveur apache/mysql/proftpd", modifie moi tel fichier de configuration...
    2. lorsque les 3 instances sont lancés, vous consommer pour la partie OS (couche basse, réseau..) une seule fois, puis vous avez apache/mysql/proftpd qui tourne

    Donc l'empreinte mémoire/cpu sera très allégée
    Sans oublier également de l'espace disque économisée
  • Joohbug
    Futur Membre du Club
    Imikado, si on veut trois serveurs différents sur la même machine il faut forcément passer par une VM ? Ou c'est juste pratique pour la maintenance ?
  • imikado
    Rédacteur
    Pas avec docker, on a virtuellement 3 machines avec 3 ips différentes, mais un seul kernel tourne réellement

    Si vous êtes familier de GNU/Linux, on pourrait assimiler LXC à une sorte de chroot des processus
  • Joohbug
    Futur Membre du Club
    Je me suis mal exprimé ^^ Pour avoir 3 serveurs différents sur une machine on fait une VM ou on utilise docker. Mais qu'est ce qui empêche de faire ces serveurs avec un seul os (et une seule "instance".
  • imikado
    Rédacteur
    Si vous êtes sous GNU/LInux, utilisez uniquement docker, sinon

    Pour information, vous pouvez faire de même juste avec LXC, mais docker vous apporte un confort d'utilisation et ceci gratuitement