Quelle est la différence entre docker.io et docker?

30

J'essaie d'apprendre le docker ici, mais je suis un peu confus quant à la différence entre docker.io et docker. Le docker.ioserveur démon et dockerle client sont-ils? Pourquoi le démon doit-il s'exécuter tout le temps?

Pithikos
la source

Réponses:

12

docker-ioest le nom du paquet deb utilisé par la distribution Ubuntu docker-engineest le nom du paquet deb de la distribution officielle Docker Ubuntu.

Probablement que vous le souhaitez, docker-enginecar celui d'Ubuntu est trop ancien et buggé pour être utilisé. À ce jour, Ubuntu a 1.6.2 et le registre Docker a 1.12.0!

En termes de Docker, 1.6.2 compte comme l'âge de pierre.

Sorin
la source
4
La différence semble s'être rétrécie maintenant dans Xenial: docker.io 1.12.3 d'Ubuntu vs Docker-engine 1.13.1 de Docker.
Pierz
@Pierz, mais ubuntu sera-t-il mis à niveau dans la même version? Avant 18.04, la différence s'élargira probablement encore;)
nafg
3
un an plus tard, «faites attention à l'écart»: les versions disponibles via docker (.com) vs le repo du pack ubuntu sont maintenant si larges qu'il est même difficile de les comparer (à la mi-2017, ubuntu 17.04 (zesty)). Ce qui était appelé docker-enginedepuis docker.com est maintenant divisé en docker-ceet docker-ee(une "édition communautaire" gratuite et une "édition entreprise" payante, respectivement), et docker-composedoit être installé à partir de git ou via pip install docker-composepour obtenir la dernière version correspondante. Actuellement, malheureusement, il faut simplement éviter les dépôts ubuntu pour tout ce qui est docker.
Michael
8

Si vous utilisez Ubuntu et que vous faites un

sudo apt-get install docker

Vous obtiendrez un package décrit comme une "barre d'état système pour les applications KDE3 / GNOME2"

Si par contre vous faites

sudo apt-get install docker.io

Vous obtiendrez un package décrit comme "Docker complète l'espace de noms du noyau avec une API de haut niveau qui fonctionne au niveau du processus." c'est-à-dire le Docker auquel tout le monde pense généralement quand il dit Docker.

Peteshaw
la source
Cela ne répond pas à la question.
Toto
1
Comment cela répond-il à la question, à savoir "quelle est la différence ...?"?
Pierre.Vriens
4
cela a répondu à ma question, parce que j'étais confus que apt-get install dockersur ubuntu 18.04 ne m'avait pas donné l'application docker et j'ai regardé quelle était la différence entre ces deux (cela apt-cache search ^dockerm'aurait dit aussi)
eli
5
La réponse est qu'il dockers'agit d'un plugin de plateau, tandis que docker.iole logiciel de conteneurisation Docker. Ubuntu avait déjà un paquet appelé docker, ils ont donc dû appeler le paquet pour le logiciel de conteneur Dockerdocker.io
theferrit32
2
C'est la meilleure réponse car elle vous indique en fait que si vous souhaitez installer le logiciel de conteneur, vous devez utilisersudo apt-get install docker.io
JacKeown
6

Docker est le nom de la plate-forme ouverte permettant aux développeurs et administrateurs système de créer, expédier et exécuter des applications distribuées. Docker.io, d'autre part, est le nom du package que vous installez dans votre système d'exploitation Linux (c'est-à-dire Ubuntu). Voir ce lien ici .

En termes de fonctionnement, le moteur Docker se compose de deux parties: un démon, un processus serveur qui gère tous les conteneurs et un client, qui agit comme un contrôle à distance pour le démon. Je vous suggère d'essayer une démo rapide qu'ils ont sur leur site, situé ici .

Du point de vue de l'utilisabilité, vous appelez le client Docker à chaque fois que vous utilisez la dockercommande.

dandaman12
la source
4
Oui, mais cela ne dit rien sur les deux processus différents, à savoir docker et docker.io
Pithikos
3

Il semble que docker ne soit qu'un lien symbolique vers docker.io:

> file $(which docker)
/usr/local/bin/docker: symbolic link to `/usr/bin/docker.io'

Nous pouvons donc supposer que docker.io est à la fois le processus démon et le processus client, juste invoqué avec différents drapeaux, je suppose?!

Pithikos
la source
C'est exactement ça. docker.io utilise le même binaire pour le client et le serveur / démon.
Rob Wells
2

Parler des paquets Debian: docker.ioc'est le nom du paquet fourni par Debian / Ubuntu, tandis que dockerc'est le nom du paquet fourni par docker.com.

Techniquement, ces paquets sont construits différemment: pour docker.ioles dépendances de construction sont récupérées à partir des paquets Debian, tandis que pour docker, les dépendances de construction sont dans l'arborescence, dans le vendorrépertoire.

Si vous voulez plus de détails, j'ai écrit un article de blog détaillé à: https://www.collabora.com/news-and-blog/blog/2018/07/04/docker-io-debian-package-back-to- la vie/

elboulangero
la source