Wie aktualisiere ich Docker?

117

Ich gebe docker.io version ein und erhalte:

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

Ich folge dem mit einem apt-get update, dann entweder: apt-get upgradeoder apt-get upgrade docker.io, aber alles, was es mir gibt, ist:

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

Ich verwende einen 64-Bit-Server mit Ubuntu 14.04 (vertrauenswürdig).

BEARBEITEN: Ich glaube, ich habe ein Skript in diesem Post-Kommentar verwendet , um Docker zu installieren (da angeblich nur Docker anstelle von docker.io eingegeben werden kann).

Gerrat
quelle
1
Wie haben Sie Docker installiert?
jobin
Ich weiß nicht, was das Ziel des Skripts ist, abgesehen davon, die Binärdatei "docker.io" in "docker" umzubenennen.
Braiam
@Braiam: Ich war mir auch nicht ganz sicher, aber da ich mit Linux-Betriebssystemen nicht allzu vertraut bin, hoffte ich, dass es etwas Besseres als das tut (oder vielleicht war dies nur eine bessere Möglichkeit, als einfach die Binärdatei umzubenennen ).
Gerrat

Antworten:

145

Angenommen, es ist Ubuntu Trusty (14.04), das offiziell 0.9.1 enthält

Aktualisieren Sie die Version 2017/03/07 erneut , um den Änderungen in der neuen Version Rechnung zu tragen. Siehe https://blog.docker.com/2017/03/docker-enterprise-edition/.

Die offizielle Richtlinie ist hier. Installieren Sie den Docker für Ubuntu . Die alte Version hatte einen anderen Paketnamen.

  • docker.io: wird verwendet, um sehr alte Version in Standard-Ubuntu-Repo zu sein (kann hier übersprungen werden)
  • docker-engine: wird vor Version 1.13.x verwendet
  • docker-ce: seit dem 17.03

für Docker-Engine

# 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"

Dann können Sie problemlos auf die neueste Docker-Version aktualisieren

$ sudo apt-get update

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

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

Und für den Fall, dass Sie nicht das neueste Paket installieren möchten, können Sie wie folgt vorgehen.

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

für 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
Larry Cai
quelle
3
Haben Sie Vor- / Nachteile dieser Methode im Vergleich zu der, die ich bei der Installation von htts: //get.docker.io gefunden habe? Ich würde denken, der aus der eigentlichen Docker-Domain scheint offizieller zu sein, aber wenn es die gleichen Leute sind, die das Docker-Maint / Testing-PPA verwalten, ist es vielleicht egal.
Gerrat
Ich weiß nicht, der Link für Ihre Methode ist ein bisschen alt, PPA ist die gute Wahl für Ubuntu-Benutzer, und dies kommt vom Docker Ubuntu-Betreuer-Team, es ist auch vertrauenswürdig. Wahrscheinlich, wie Sie sagten, die gleichen Leute mit besseren Weg, um die Gemeinschaft zu dienen ;-)
Larry Cai
1
----------Verkauft!
Gerrat
@ Gerrat scheint wieder zu Ihrer Lösung zurückzukehren, wenn Sie jetzt 1.0 wählen
Larry Cai
3
gpg: no writable keyring found: eof-> benutze sudo ...
Michael Cole
22

Warnung: Da dies ein älterer Beitrag ist, nutzen Sie bitte die offiziellen Ressourcen, um Probleme zu vermeiden: https://www.docker.com/community-edition#/download


Eine Möglichkeit, ein Upgrade auf die neueste Version durchzuführen (ohne von der Quelle zu installieren), besteht darin, die hier von Digital Ocean bereitgestellten Anweisungen zu verwenden :

  1. Fügen Sie apt-key den Docker-Repository-Schlüssel zur Paketüberprüfung hinzu

    sudo sh -c "wget ​​-qO- https://get.docker.io/gpg | apt-key add -"
  2. Fügen Sie das Docker-Repository zu Aptitude-Quellen hinzu:

    sudo sh -c "echo deb http://get.docker.io/ubuntu docker main \> /etc/apt/sources.list.d/docker.list"
  3. Aktualisieren Sie das Repository mit dem neuen Zusatz:

    sudo aptitude update
  4. Laden Sie zum Schluss Docker herunter und installieren Sie es:

    sudo aptitude installiert lxc-docker
Gerrat
quelle
1
Dies bedeutet jedoch, dass Sie sich für die Verwendung der möglicherweise weniger stabilen Upstream-Version entscheiden. Beispielsweise wurde nach dem Upgrade auf Upstream Docker 1.1.0 der Fehler Driver aufs failed to remove root filesystem beim Entfernen bestimmter Container angezeigt. Ich habe das nie mit dem docker.io-Paket gesehen, das vermutlich in Trusty besser getestet und stabiler ist.
Sridhar Ratnakumar
1
@Sridhar: Einverstanden. ... Mein ursprünglicher Grund für das Upgrade war jedoch, dass in der aktuellen "getesteten und stabilen" Version entweder einige Schlüsselfunktionen fehlten (ich weiß nicht mehr, was jetzt passiert) oder dass ich einige Show-Stopper-Bugs hatte. ... und Ihre besondere Beschwerde scheint ein Fehler zu sein, der seit geraumer Zeit besteht: Sehen Sie sich die drei verwandten Fehler an, auf die am Ende dieser Seite verwiesen wird
Gerrat
Verwenden Sie die offiziellen Ressourcen für die Installation, diese sind veraltet ... docker.com/community-edition#/download
schlenger
12

Kurze Antwort: Das offizielle Docker-Installationsdokument behandelt dies nun für Ubuntu 14.04 (obwohl es nicht so klar ist, wie es sein könnte).

Das Ubuntu - Paket genannt docker.iowird nicht von Docker, Inc. erhalten und wird hinter der aktuellen Version hinken. Zum Beispiel steckt es heute fest 0.9.1und ist es spätestens 1.0.1. Ich würde weitermachen und dies entfernen, wenn Sie es haben.

Das Docker-Paket heißt lxc-docker(verwirrend, da LXC nicht mehr unbedingt erforderlich ist). Es ist jedoch auf dem neuesten Stand. Sie müssen das Docker-Repo zu Ihrem apt-getSetup hinzufügen . Das offizielle Docker-Installationsdokument behandelt dies für Ubuntu 14.04 - suchen Sie nach "Wenn Sie die neueste Version von Docker ausprobieren möchten". Beachten Sie, dass die Binärdatei docker(im Gegensatz zu docker.ioUbuntu) sein wird.

Luft
quelle
11

Wenn Sie get.docker.com vertrauen, führen Sie Folgendes aus:

curl -sSL https://get.docker.com/ | sudo bash
Leo Gallucci
quelle
8

Sie können im Anschluss an die von der Drittanbieter - Repository installieren Anweisungen :

$ 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
Fernando Correia
quelle
4

Sie haben die neueste Version von docker.io (0.9.1), die ab heute in den Ubuntu-Repositorys für Trusty Tahr verfügbar ist.

Wenn Sie die Version dennoch aktualisieren möchten, können Sie die neueste Version von docker.io von github klonen und neu kompilieren. Anweisungen zur Installation von der Quelle finden Sie in einem interaktiven Lernprogramm auf dem Blog von docker.io .

Job in
quelle
Danke, aber ich habe gerade das interaktive Tutorial gemacht. Es sagt nichts über die Installation aus dem Quellcode aus - es werden nur einige grundlegende Docker-Befehle durchlaufen.
Gerrat
Der Grund, warum ich eine spätere Version brauche, ist, dass es völlig bombardiert wird, um ein importiertes Bild auszuführen. Das Bild läuft gut auf der neuesten stabilen Version: 0.11.1. Ich verwende die neueste stabile Version auf einem anderen Computer und bin mir nicht sicher, wie ich darauf gekommen bin, aber es ist unwahrscheinlich, dass ich sie aus dem Quellcode kompiliert habe. Gibt es vielleicht nur ein anderes Repository, das die neueste stabile Version hat?
Gerrat
Sie haben mir geholfen, mein Gedächtnis dahingehend zu optimieren, wie ich die neueste Version installiert habe.
Gerrat
1

oder einfach nur sudo apt-get install -f docker-ce, um den neuesten Stall zu bekommen

Damilola
quelle
das hat bei mir nicht funktioniert - ich verstehe -E: Package 'docker-ce' has no installation candidate
Alexander Mills
0

Sie können die docker.io 0.11.1 .debDatei auch von Launchpad herunterladen und installieren.

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

quelle
Interessant. Es sieht so aus, als wäre das erst vor ein paar Wochen eingerichtet worden.
Gerrat