Come posso aggiornare Docker


117

Digito docker.io versione e ottengo:

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

Lo seguo con un apt-get update, poi o:, apt-get upgradeo apt-get upgrade docker.io, ma tutto ciò che mi dà è:

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

Sto eseguendo Ubuntu 14.04 (fidato) server a 64 bit.

EDIT: Penso di aver usato uno script in questo post post per installare docker (dal momento che pretendeva di consentirmi di digitare solo docker anziché docker.io)


1
Come hai installato la finestra mobile?
lavoro

Non so quale sia l'obiettivo della sceneggiatura a parte rinominare il file binario "docker.io" in "docker".
Braiam,

@Braiam: Neanche io ne ero davvero sicuro, ma dal momento che non ho familiarità con gli O / S di Linux, speravo che stesse facendo qualcosa di più utile di così (o forse questo era solo un modo migliore del semplice rinominare il binario ).
Gerrat,

Risposte:


145

Supponiamo che sia la versione di Ubuntu Trusty (14.04), che ha ufficialmente la 0.9.1

Aggiorna di nuovo nel 2017/03/07 per riflettere le modifiche apportate alla nuova versione, vedi https://blog.docker.com/2017/03/docker-enterprise-edition/

Le linee guida ufficiali sono qui Installa finestra mobile per Ubuntu , la vecchia versione aveva un nome di pacchetto diverso.

  • docker.io: è usato per essere una versione molto vecchia nel repository ubuntu predefinito (può saltare qui)
  • docker-engine: viene utilizzato prima della versione 1.13.x
  • docker-ce: dal 17.03

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

Quindi è possibile eseguire facilmente l'aggiornamento all'ultima versione mobile

$ sudo apt-get update

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

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

E nel caso in cui non desideri installare il pacchetto più recente, puoi fare qualcosa come sotto.

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

per 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
Hai dei pro / contro nell'uso di questo metodo rispetto a quello che ho trovato che si installa da htts: //get.docker.io? Penserei che quello del dominio reale docker sembri più ufficiale, ma se sono gli stessi ragazzi che gestiscono il docker-manut / test ppa, allora forse non importa.
Gerrat,

Non lo so, il link per il tuo metodo è un po 'vecchio, PPA è la buona scelta per l'utente Ubuntu, e questo viene dal team di manutentori Docker Ubuntu, è anche affidabile. Probabilmente come hai detto, stessi ragazzi con un modo migliore di servire la comunità ;-)
Larry Cai,

1
----------Venduto!
Gerrat,

@Gerrat sembra di nuovo alla tua soluzione se vai per 1.0 ora
Larry Cai,

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

22

Avvertenza: poiché si tratta di un post precedente, utilizzare le risorse ufficiali per evitare problemi: https://www.docker.com/community-edition#/download


Un modo per eseguire l'aggiornamento alla versione più recente (senza installare dai sorgenti) è quello di utilizzare le istruzioni qui fornite da Ocean digitale:

  1. Aggiungi la chiave del repository docker a apt-key per la verifica del pacchetto

    sudo sh -c "wget ​​-qO- https://get.docker.io/gpg | apt-key add -"
  2. Aggiungi il repository docker alle origini aptitude:

    sudo sh -c "echo deb http://get.docker.io/ubuntu docker main \> /etc/apt/sources.list.d/docker.list"
  3. Aggiorna il repository con la nuova aggiunta:

    sudo aptitude update
  4. Infine, scarica e installa la finestra mobile:

    sudo aptitude installa lxc-docker

1
Ciò significa, tuttavia, che stai decidendo di utilizzare la versione upstream stabile potenzialmente inferiore. Ad esempio, dopo l'aggiornamento alla finestra mobile upstream 1.1.0, ho iniziato a vedere l'errore Driver aufs failed to remove root filesystem durante la rimozione di determinati contenitori. Non l'ho mai visto con il pacchetto docker.io, che è presumibilmente più testato e stabile in Trusty.
Sridhar Ratnakumar,

1
@Sridhar: concordato. ... tuttavia, il mio motivo originale per l'aggiornamento era che l'attuale versione "testata e stabile" mancava di alcune funzionalità chiave (non ricordo cosa ora), o aveva alcuni bug per lo show-stopper per me. ... e il tuo particolare reclamo sembra essere un bug che esiste da un po 'di tempo: vedi i tre bug correlati citati in fondo a questa pagina: coderwall.com/p/h24pgw
Gerrat

Utilizza le risorse ufficiali per l'installazione, queste sono obsolete ... docker.com/community-edition#/download
schlenger

12

Risposta breve: il documento ufficiale di installazione Docker ora copre questo per Ubuntu 14.04 (anche se non è così chiaro come potrebbe essere).

Il pacchetto Ubuntu denominato docker.ionon è gestito da Docker, Inc. e resterà indietro rispetto all'ultima versione. Ad esempio oggi è bloccato 0.9.1e l'ultimo è 1.0.1. Vorrei andare avanti e rimuovere questo se lo hai.

Il pacchetto Docker è chiamato lxc-docker(in modo confuso, poiché LXC non è più strettamente richiesto). È comunque aggiornato. Sarà necessario aggiungere il repository di proprietà Docker alla propria apt-getconfigurazione. Il documento ufficiale di installazione Docker copre questo per Ubuntu 14.04 - cerca "Se desideri provare l'ultima versione di Docker". Nota, il binario sarà docker(al contrario di docker.ioquando fornito da Ubuntu).


11

Se ti fidi di get.docker.com, esegui:

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

8

È possibile installare dal repository di terze parti seguendo le istruzioni :

$ 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

Hai l'ultima versione di docker.io (0.9.1) che è disponibile nei repository ubuntu per Trusty Tahr a partire da oggi.

Tuttavia, se si desidera ancora aggiornare la versione, è possibile clonare l'ultima versione di docker.io da github e ricompilare. Per istruzioni sull'installazione dal sorgente, è disponibile un tutorial interattivo sul blog di docker.io .


Grazie, ma ho appena fatto il tutorial interattivo. Non dice nulla sull'installazione dal sorgente: passa attraverso alcuni comandi docker di base.
Gerrat,

Il motivo per cui ho bisogno di una versione successiva è che sta completamente bombardando il tentativo di eseguire un'immagine importata. L'immagine funziona perfettamente con l'ultima versione stabile: 0.11.1. Sto eseguendo l'ultima versione stabile su un altro computer e non sono esattamente sicuro di come l'ho ottenuto, ma è improbabile che l'abbia compilato dal sorgente. C'è forse solo un altro repository che ha l'ultima versione stabile su?
Gerrat,

Mi hai aiutato a modificare la mia memoria su come ho installato l'ultima versione.
Gerrat,

1

o semplicemente sudo apt-get install -f docker-ceper ottenere l'ultima stalla


questo non ha funzionato per me - capisco -E: Package 'docker-ce' has no installation candidate
Alexander Mills,

0

Puoi anche scaricare il docker.io 0.11.1 .debfile da Launchpad e installarlo.

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

Interessante. Sembra che sia stato appena installato poche settimane fa.
Gerrat,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.