«У пакета« docker-ce »нет кандидата для установки» в 18.04


62

Я следую официальному руководству по установке Docker для docker-ce на Ubuntu.

Когда я добираюсь, sudo apt install docker-ceя получаю E: Package 'docker-ce' has no installation candidate:

$ sudo apt-get update
Hit:1 http://gb.archive.ubuntu.com/ubuntu bionic InRelease
Hit:2 http://gb.archive.ubuntu.com/ubuntu bionic-updates InRelease
Hit:3 http://gb.archive.ubuntu.com/ubuntu bionic-backports InRelease
Hit:4 http://security.ubuntu.com/ubuntu bionic-security InRelease
Reading package lists... Done

$ sudo apt-get install \
>     apt-transport-https \
>     ca-certificates \
>     curl \
>     software-properties-common
Reading package lists... Done
Building dependency tree       
Reading state information... Done
ca-certificates is already the newest version (20180409).
curl is already the newest version (7.58.0-2ubuntu3).
software-properties-common is already the newest version (0.96.24.32.1).
The following NEW packages will be installed
  apt-transport-https
0 to upgrade, 1 to newly install, 0 to remove and 0 not to upgrade.
Need to get 1,692 B of archives.
After this operation, 152 kB of additional disk space will be used.
Do you want to continue? [Y/n] 
Get:1 http://gb.archive.ubuntu.com/ubuntu bionic/universe amd64 apt-transport-https all 1.6.1 [1,692 B]
Fetched 1,692 B in 0s (65.4 kB/s)               
Selecting previously unselected package apt-transport-https.
(Reading database ... 116694 files and directories currently installed.)
Preparing to unpack .../apt-transport-https_1.6.1_all.deb ...
Unpacking apt-transport-https (1.6.1) ...
Setting up apt-transport-https (1.6.1) ...

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
OK

$ sudo apt-key fingerprint 0EBFCD88
pub   rsa4096 2017-02-22 [SCEA]
      9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid           [ unknown] Docker Release (CE deb) <docker@docker.com>
sub   rsa4096 2017-02-22 [S]

$ sudo add-apt-repository \
>    "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
>    $(lsb_release -cs) \
>    stable"
Hit:1 http://gb.archive.ubuntu.com/ubuntu bionic InRelease
Hit:2 http://gb.archive.ubuntu.com/ubuntu bionic-updates InRelease                                                                                    
Hit:3 http://gb.archive.ubuntu.com/ubuntu bionic-backports InRelease                                                                                  
Get:4 https://download.docker.com/linux/ubuntu bionic InRelease [64.4 kB]                                                       
Hit:5 http://security.ubuntu.com/ubuntu bionic-security InRelease                                                               
Fetched 64.4 kB in 0s (141 kB/s)
Reading package lists... Done

robin@xps:~/git/snapcraft.io$ sudo apt-get update
Hit:1 http://gb.archive.ubuntu.com/ubuntu bionic InRelease
Hit:2 http://gb.archive.ubuntu.com/ubuntu bionic-updates InRelease                                      
Hit:3 http://gb.archive.ubuntu.com/ubuntu bionic-backports InRelease                                                                                   
Hit:4 https://download.docker.com/linux/ubuntu bionic InRelease                                                                                        
Hit:5 http://security.ubuntu.com/ubuntu bionic-security InRelease                                                                
Reading package lists... Done  

$ sudo apt-get install docker-ce
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package docker-ce is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source

E: Package 'docker-ce' has no installation candidate

Моей первой мыслью было, что Docker еще не выпустил пакет для Bionic (он очень новый), но когда я искал «install docker-ce ubuntu 18.04», я обнаружил руководство, которое кажется 18.04 специфическим, и в основном просто дает точно такие же инструкции - предположить, что это как минимум сработало для автора:

https://linuxconfig.org/how-to-install-docker-on-ubuntu-18-04-bionic-beaver

Кто-нибудь знает, почему это может не сработать для меня?


См. Также другие варианты: снимок от Docker Inc или более свежий стандартный пакет Ubuntu в docker.io: askubuntu: Docker-CE или пакет
— docker.io

Все еще есть эта проблема в июле 2019 года ... sudo apt install docker.ioработал для меня
— cowlinator

Ответы:


38

Из того же руководства, на которое вы ссылались, вы можете вместо этого использовать репозиторий для 17.10:

deb [arch=amd64] https://download.docker.com/linux/ubuntu artful stable

И все docker-ceзависимые пакеты будут разрешены из bionicрепозитория Ubuntu . Проверьте документацию Docker для получения дополнительной информации. Нет проблем с совместимостью, чтобы беспокоиться :)

2018-07-19 обновление

Docker 18.06 обновлен до bionicрепозитория, этот обходной путь больше не требуется!


8
Все еще не работает на 18.04. Я все еще получаю E: Package 'docker-ce' has no installation candidate
— RJ

@ RJ Это работает для меня 18.04. Сейчас несколько дней спустя; возможно, было несколько обновлений для репозиториев. Я заметил, что некоторые пакеты были скачаны с бионического, а другие с хитрого.
— NZD


Я могу подтвердить, что это работает, просто установил его на 18.04➜ ~ docker -v Docker version 18.03.1-ce, build 9ee9f40
— copser

1
К вашему сведению, с 21 июня он может быть установлен с:curl -fsSL get.docker.com | CHANNEL=stable sh
— Юха Унтинен

38

Запустите это, если вы хотите установить docker-ceна Ubuntu 18.04:

sudo apt install apt-transport-https ca-certificates curl software-properties-common
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 bionic test"
sudo apt update
sudo apt install docker-ce

Чтобы проверить, успешно ли завершилась установка, просто запустите:

docker -v

должен вывести:

Docker version 18.06.1-ce, build e68fc7a

7
Также, в случае Ubuntu 19, просто поменяйте bionicв 3-й строке наdisco
— пкудеров

Кстати, этот URL плюс «бионический» плюс «тест» - это просто путь к выпуску - вы можете проверить этот URL и следовать по пути. Кажется, что любой допустимый путь является жизнеспособным - есть еще несколько стабильных / ночных / etc выпусков для некоторого количества версий Ubuntu. Так что для любой будущей версии Ubuntu ее соответствующий релиз можно проверить там.
— пкудеров

@pkuderov Docker ce отсутствует в этом хранилище, deb также доступен только для containerd.io . Я не знаю, bionicбудет ли работать вместо discoэтого. Это так расстраивает.
— Андрас

@pkuderov Вы можете соответственно отредактировать ответ
— Юваль Прусс

2
Ребята, это похоже на суффиксы -ceи -ee удаляются начиная с вер. 18.09.0так что нет никакой ошибки, насколько я вижу. Проверил мою установку из testбилда - sudo docker run hello-worldработает правильно. Единственная проблема, которую я вижу - 19 вер в бета-версии. Извините за путаницу - только 2-я неделя с использованием Linux :)
— pkuderov

9

Некоторые из гидов подпрыгнули от пистолета; docker-ce еще не доступен для Ubuntu 18.04. Вы можете проверить список поддерживаемых версий здесь .

То же самое руководство, на которое вы ссылались, предложило установить docker.io; это то, что я сделал Это обходной путь, пока docker-ce не поддерживает 18.04.


1
Из этого же руководства вы можете использовать репозиторий для 17.10 вместо этого в данный момент:deb [arch=amd64] https://download.docker.com/linux/ubuntu artful stable
— tan9

@ tan9 это должен быть принятый ответ - не могли бы вы опубликовать его как ответ?
— Робин Уинслоу

1
Я работаю 18.04, и указание URL на artful не помогло мне. Единственное, что сработало, это установка docker.io.
— RJ

6

Следующие шаги здесь в документации Docker работали для меня. Я только что изменения stableк testв этой команде

sudo add-apt-repository \ 
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"

почему ты должен был это сделать? Какую версию ты используешь? Не могли бы вы добавить полные шаги, которые вы использовали?
— Занна

Это не работает для Ubuntu 18.04, о чем и был вопрос.
— RJ

это работает абсолютно нормально для меня
— xExplorer


2

У меня была такая же проблема, вот как я ее исправил:

$ sudo snap install docker

$docker -v

Docker version 18.06.1-ce, build e68fc7a


$sudo docker version


Client:
 Version:           18.06.1-ce
 API version:       1.38
 Go version:        go1.10.4
 Git commit:        e68fc7a
 Built:             Tue May  7 18:01:43 2019
 OS/Arch:           linux/386
 Experimental:      false

Server:
 Engine:
  Version:          18.06.1-ce
  API version:      1.38 (minimum version 1.12)
  Go version:       go1.10.4
  Git commit:       e68fc7a
  Built:            Tue May  7 18:01:44 2019
  OS/Arch:          linux/386

Это самое простое и элегантное решение! Просто запустите 'sudo apt install snapd' в первую очередь :)
— d.popov

0

Snap пакет docker будет легко установлен в Ubuntu 19.04 (Disco), и это сработало для меня.

Проверьте документацию для этого здесь:

https://github.com/docker/docker-snap



1
Добро пожаловать в АС. Не могли бы вы отредактировать свой ответ, чтобы предоставить краткое изложение решения, которое вы даете. Таким образом, ваш ответ останется действительным, даже если ссылка исчезнет или изменится. Спасибо за ваши усилия.
— Марк Ванхомиссен
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.