Як оновити Docker


117

Я набираю версію docker.io і отримую:

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

Я слідую за цим за допомогою apt-get update, тоді або: apt-get upgradeабо apt-get upgrade docker.io, але все, що мені дає:

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

Я працюю на 64-бітовому сервері Ubuntu 14.04 (надійний).

EDIT: Я думаю, що я використав сценарій у цьому коментарі до повідомлення, щоб встановити docker (оскільки він ніби дозволив мені просто вводити docker замість docker.io)


1
Як ви встановили докер?
Jobin

Я не знаю, яка мета сценарію, крім перейменування бінарного файлу "docker.io" на просто "докер".
Брайам

@Braiam: Я теж не був впевнений, але, оскільки я не надто знайомий з O / S Linux, я сподівався, що це робить щось корисніше, ніж це (або, можливо, це був просто кращий спосіб, ніж просто перейменування бінарного. ).
Геррат

Відповіді:


145

Припустимо, це випуск Ubuntu Trusty (14.04), який має 0.9.1 офіційно

Оновіть ще раз у 2017/03/07, щоб відобразити зміни у новій версії, див. Https://blog.docker.com/2017/03/docker-enterprise-edition/

Офіційне керівництво тут. Встановіть докер для Ubuntu , старий реліз мав іншу назву пакета.

  • docker.io: використовується в дуже старій версії за замовчуванням ubuntu repo (тут можна пропустити)
  • docker-engine: використовується до випуску 1.13.x
  • docker-ce: з 17.03

для докер-двигуна

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

Тоді ви можете плавно перейти на останню версію докера

$ sudo apt-get update

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

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

І якщо ви не хочете встановлювати останній пакет, тоді ви можете зробити щось на кшталт нижче.

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

для докер-се

$ 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
Чи є у вас плюси / мінуси використання цього методу порівняно з тим, який я виявив, що встановлюється з htts: //get.docker.io? Я б подумав, що той з фактичного докерного домену здається більш офіційним, але якщо це ті самі хлопці, які адмініструють docker-maint / testing ppa, можливо, це не має значення.
Геррат

Я не знаю, посилання на ваш метод мало старої, PPA - хороший вибір для користувача ubuntu, і це походить від команди технічної підтримки Docker Ubuntu, вона також може мати довіру. Напевно, як ви вже говорили, ті самі хлопці, які мають кращий спосіб служити громаді ;-)
Ларрі Кай

1
---------- Продається!
Геррат

@Gerrat, схоже, знову повернеться до вашого рішення, якщо зараз перейти на 1,0
Ларрі Кай

3
gpg: no writable keyring found: eof-> використовуйте судо ...
Майкл Коул

22

Попередження: Оскільки це старіші повідомлення, для запобігання проблемам використовуйте офіційні ресурси: https://www.docker.com/community-edition#/download


Один з методів відновлення до останньої версії (без установки від джерела), щоб використовувати інструкції тут , що надаються Digital океан:

  1. Додайте ключ сховища докера до apt-ключа для перевірки пакета

    sudo sh -c "wget ​​-qO- https://get.docker.io/gpg | apt-key add -"
  2. Додайте сховище докера до джерел можливостей:

    sudo sh -c "echo deb http://get.docker.io/ubuntu docker main \> /etc/apt/sources.list.d/docker.list"
  3. Оновіть сховище новим доповненням:

    оновлення можливості судо
  4. Нарешті, завантажте та встановіть докер:

    sudo здатність встановити lxc-docker

1
Це, однак, означає, що ви вирішили використовувати потенційно меншу стабільну версію за течією. Наприклад, після оновлення до версії docker 1.1.0, я почав бачити помилку Driver aufs failed to remove root filesystem при видаленні певних контейнерів. Я ніколи не бачив цього з пакетом docker.io, який, мабуть, більш перевірений і стабільний у Trusty.
Шрідхар Ратнакумар

1
@Sridhar: Погоджено. ... однак, моя первісна причина оновлення полягала в тому, що в поточній "перевіреній та стабільній" версії або відсутня якась ключова функціональність (не пам'ятаю, що зараз), або були деякі помилки для зупинки шоу. ... і ваша скарга, здається, є помилкою, яка існує досить довго: див. три пов’язані помилки, на які посилається внизу цієї сторінки: coderwall.com/p/h24pgw
Геррат

Використовуйте офіційні ресурси для встановлення, ці застарілі ... docker.com/community-edition#/download
schlenger

12

Коротка відповідь: офіційний Dock install doc тепер висвітлює це для Ubuntu 14.04 (хоча це не так зрозуміло, як могло б бути).

Пакет Ubuntu по імені docker.ioне підтримує Докер, Inc. , і буде відставати від останньої версії. Наприклад, сьогодні вона застрягла, 0.9.1а найновіше - це 1.0.1. Я б пішов і вилучив це, якщо у вас є.

Пакет Docker названий lxc-docker(заплутано, оскільки LXC більше не є строго необхідним). Однак це актуально. Вам потрібно буде додати репо-репортаж, що належить Docker apt-get. Офіційний документ Docker install doc охоплює це для Ubuntu 14.04 - шукайте "Якщо ви хочете спробувати останню версію Docker". Зауважте, двійковий файл буде docker(на відміну від того, docker.ioколи надається Ubuntu).



8

Ви можете встановити з сторонніх сховищ, дотримуючись інструкцій :

$ 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

У вас є остання версія docker.io (0.9.1), яка доступна в сховищах ubuntu для Trusty Tahr на сьогодні.

Однак якщо ви все ще хочете оновити версію, ви можете клонувати останню версію docker.io з github та перекомпілювати. Інструкції щодо його встановлення з джерела є інтерактивним посібником у блозі docker.io .


Дякую, але я просто зробив інтерактивний підручник. Це нічого не говорить про його встановлення з джерела - він просто проходить через деякі дуже базові команди докера.
Геррат

Причиною, що мені потрібна пізніша версія, є те, що вона повністю бомбардує намагання запустити імпортне зображення. Зображення працює в останній стабільній версії: 0.11.1. Я запускаю останню стабільну версію на іншій машині, і я не точно впевнений, як я її отримав, але навряд чи я склав її з джерела. Чи може бути просто інше сховище, яке має останню стабільну версію?
Геррат

Ви допомогли налаштувати мою пам'ять про те, як я встановив останню версію.
Геррат

1

або просто sudo apt-get install -f docker-ceдля того, щоб отримати останню стабільну


це не спрацювало для мене - я розумію -E: Package 'docker-ce' has no installation candidate
Олександр Міллз

0

Ви також можете завантажити docker.io 0.11.1 .debфайл із Launchpad та встановити.

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

Цікаво. Схоже, що це було створено кілька тижнів тому.
Геррат
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.