Comment puis-je mettre à niveau Docker


117

Je tape la version docker.io et reçois:

Client version: 0.9.1
Go version (client): go1.2.1
Git commit (client): 3600720
Server version: 0.9.1
Git commit (server): 3600720
Go version (server): go1.2.1
Last stable version: 0.11.1, please update docker

Je suis cela avec un apt-get update, puis soit:, apt-get upgradeou apt-get upgrade docker.io, mais tout ce que cela me donne est:

docker.io is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

J'utilise Ubuntu 14.04 (fidèle) serveur 64 bits.

EDIT: Je pense avoir utilisé un script dans ce commentaire pour installer docker (car il était censé me permettre de taper docker au lieu de docker.io)


1
Comment avez-vous installé Docker?
jobin

Je ne sais pas quel est l'objectif du script si ce n'est de renommer le fichier binaire "docker.io" en simplement "docker".
Braiam

@Braiam: Je n'étais pas vraiment sûr non plus, mais comme je ne connaissais pas trop les systèmes d'exploitation Linux, j'espérais que ce système ferait quelque chose de plus utile que cela (ou peut-être que c'était simplement un meilleur moyen que de simplement renommer le nom binaire )
Gerrat

Réponses:


145

Supposons que ce soit la version Ubuntu Trusty (14.04), qui a officiellement la 0.9.1

Mettez à jour à nouveau en 2017/03/07 pour refléter les modifications de la nouvelle version, voir https://blog.docker.com/2017/03/docker-enterprise-edition/

La directive officielle est ici Installer le menu fixe pour Ubuntu , l'ancienne version avait un nom de paquet différent.

  • docker.io: est utilisé pour être très ancienne version dans le dépôt par défaut Ubuntu (peut sauter ici)
  • docker-engine: est utilisé avant la version 1.13.x
  • docker-ce: depuis 17.03

pour moteur de docker

# add the new gpg key
$ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
# add new repo
$ sudo add-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"

Ensuite, vous pouvez passer facilement à la dernière version de docker

$ sudo apt-get update

# remove the old
$ sudo apt-get purge lxc-docker*

# install the new
$ sudo apt-get install docker-engine

Et dans le cas où vous ne souhaitez pas installer le dernier package, vous pouvez procéder comme ci-dessous.

$ sudo apt-get install docker-engine=1.7.1-0~trusty

pour docker-ce

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ sudo add-apt-repository \
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) \
  stable"
$ sudo apt-get update
$ sudo apt-get install docker-ce

3
Avez-vous des avantages / inconvénients à utiliser cette méthode par rapport à celle que j'ai trouvée qui installe depuis htts: //get.docker.io? Je pense que celui du domaine docker semble plus officiel, mais si ce sont les mêmes personnes qui gèrent le ppa docker-maint / testing, alors peut-être que cela n'a pas d'importance.
Gerrat

Je ne sais pas, le lien pour votre méthode est un peu vieux, PPA est le bon choix pour l'utilisateur Ubuntu, et cela vient de l'équipe de mainteneurs de Docker Ubuntu, il est également fiable. Probablement, comme vous l'avez dit, les mêmes gars avec un meilleur moyen de servir la communauté ;-)
Larry Cai

1
----------Vendu!
Gerrat

@Gerrat semble de retour à votre solution si aller pour 1.0 maintenant
Larry Cai

3
gpg: no writable keyring found: eof-> use sudo ...
Michael Cole

22

Avertissement: S'agissant d'une publication plus ancienne, utilisez les ressources officielles pour éviter les problèmes: https://www.docker.com/community-edition#/download


Une façon de mettre à niveau vers la dernière version (sans installer à partir du source) consiste à utiliser les instructions fournies ici par Digital Ocean:

  1. Ajouter la clé du référentiel de docker à apt-key pour la vérification du paquet

    sudo sh -c "wget ​​-qO- https://get.docker.io/gpg | apt-key add -"
  2. Ajoutez le référentiel de menu fixe aux sources d'aptitude:

    sudo sh -c "echo deb http://get.docker.io/ubuntu docker main \> /etc/apt/sources.list.d/docker.list"
  3. Mettez à jour le référentiel avec le nouvel ajout:

    mise à jour sudo aptitude
  4. Enfin, téléchargez et installez docker:

    sudo aptitude installe lxc-docker

1
Cela signifie toutefois que vous décidez d'utiliser la version amont potentiellement moins stable. Par exemple, après la mise à niveau vers le menu fixe docker 1.1.0, j'ai commencé à voir l'erreur Driver aufs failed to remove root filesystem lors de la suppression de certains conteneurs. Je n'ai jamais vu cela avec le package docker.io, qui est probablement plus testé et stable dans Trusty.
Sridhar Ratnakumar

1
@Sridhar: D'accord. Cependant, la raison initiale de ma mise à niveau était que la version actuelle "testée et stable" ne disposait pas de certaines fonctionnalités clés (je ne me souviens plus de la situation actuelle), ou qu'elle contenait des bugs critiques pour moi. ... et votre plainte semble être un bogue qui existe depuis assez longtemps: voir les trois bogues liés référencés au bas de cette page: coderwall.com/p/h24pgw
Gerrat

Utilisez les ressources officielles pour l'installation, celles-ci sont obsolètes ... docker.com/community-edition#/download
schlenger

12

Réponse courte: la documentation d'installation officielle de Docker couvre désormais cette question pour Ubuntu 14.04 (même si ce n'est pas aussi clair que cela pourrait être).

Le paquet Ubuntu nommé docker.ion'est pas mis à jour par Docker, Inc. et sera en retard sur la dernière version. Par exemple, aujourd'hui, il est bloqué au 0.9.1plus tard 1.0.1. Je voudrais aller de l'avant et l'enlever si vous l'avez.

Le paquet Docker est nommé lxc-docker(ce qui prête à confusion, car LXC n’est plus strictement requis). C'est cependant à jour. Vous devrez ajouter le référentiel appartenant à Docker à votre apt-getconfiguration. La documentation d'installation officielle de Docker couvre cela pour Ubuntu 14.04 - cherchez "Si vous souhaitez essayer la dernière version de Docker". Notez que le binaire sera docker(contrairement à docker.ioquand fourni par Ubuntu).


11

Si vous faites confiance à get.docker.com, exécutez:

curl -sSL https://get.docker.com/ | sudo bash

8

Vous pouvez installer à partir du référentiel tiers en suivant les instructions :

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
$ sudo sh -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
$ sudo apt-get update
$ sudo apt-get install lxc-docker

4

Vous disposez de la dernière version de docker.io (0.9.1) disponible dans les référentiels d'ubuntu pour Trusty Tahr à compter d'aujourd'hui.

Toutefois, si vous souhaitez toujours mettre à niveau la version, vous pouvez cloner la dernière version de docker.io à partir de github et la recompiler. Pour obtenir des instructions sur son installation à partir des sources, un didacticiel interactif est disponible sur le blog de docker.io .


Merci, mais je viens de faire le tutoriel interactif. Il ne dit rien sur l’installation depuis le source, il passe simplement par quelques commandes très basiques de docker.
Gerrat

La raison pour laquelle j'ai besoin d'une version ultérieure est que c'est une bombe qui tente d'exécuter une image importée. L'image fonctionne correctement sur la dernière version stable: 0.11.1. J'exécute la dernière version stable sur une autre machine, et je ne sais pas exactement comment je l'ai obtenue, mais il est peu probable que je l'ai compilée à partir du source. Y at-il peut-être juste un autre référentiel qui a la dernière version stable à?
Gerrat

Vous m'avez aidé à modifier ma mémoire sur la façon dont j'ai installé la dernière version.
Gerrat

1

ou tout simplement sudo apt-get install -f docker-cepour obtenir la dernière version stable


cela n'a pas fonctionné pour moi - je reçois -E: Package 'docker-ce' has no installation candidate
Alexander Mills

0

Vous pouvez également télécharger le docker.io 0.11.1 .debfichier à partir du tableau de bord et l’installer.

wget https://launchpad.net/~docker-maint/+archive/testing/+files/docker.io_0.11.1%7Edfsg1-1%7Eppa1%7Etrusty1_amd64.deb

sudo dpkg -i docker.io_0.11.1~dfsg1-1~ppa1~trusty1_amd64.deb

Intéressant. On dirait que cela a été mis en place il y a quelques semaines.
Gerrat
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.