61

I'm following the official Docker installation guide for docker-ce on Ubuntu.

When I get to sudo apt install docker-ce I get 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

My first thought was that Docker haven't released a package for Bionic yet (it's very new) but when I searched for "install docker-ce ubuntu 18.04" I found a guide which seems 18.04 specific, and basically just gives exactly the same instructions - suggesting that it at least worked for the author:

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

Does anyone have any idea why this might not be working for me?

  • See also your other options: a snap from Docker Inc, or a more-recent standard Ubuntu package in docker.io: askubuntu: Docker-CE or docker.io package – nealmcb Jun 22 '18 at 15:00
  • Still have this problem in July 2019... sudo apt install docker.io worked for me – cowlinator Jul 16 at 22:50
38

From the same guide you referenced, you can use repository for 17.10 instead at this moment:

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

And all docker-ce dependent packages will be resolved from the ubuntu bionic repository. Check the Docker documentation for more info. No compatibility issues to worry about :)

2018-07-19 update

Docker 18.06 has been updated to bionic repository, this workaround is not required anymore!

  • 7
    Still does not work on 18.04. I still get E: Package 'docker-ce' has no installation candidate – R J Jun 4 '18 at 12:58
  • @RJ It does work for me on 18.04. It is now a few days later; maybe there have been a few updates to the repositories. I noticed that some of the packages were downloaded from bionic and other ones from artful. – NZD Jun 7 '18 at 3:36
  • I can confirm that this is working, just installed it on 18.04 ➜ ~ docker -v Docker version 18.03.1-ce, build 9ee9f40 – copser Jun 13 '18 at 12:47
  • 1
    FYI, since June 21, it can be installed with: curl -fsSL get.docker.com | CHANNEL=stable sh – Juha Untinen Aug 27 '18 at 12:55
37

Run this if you want to install the docker-ce on 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

To check if the installation ended successfuly, just run:

docker -v

should output:

Docker version 18.06.1-ce, build e68fc7a
  • 7
    Also, in case of Ubuntu 19, just change bionic in the 3rd line to disco – pkuderov Apr 20 at 2:32
  • Btw, that url plus "bionic" plus "test" is just a path to release - you can check that url and follow the path. Seems that any valid path is viable - there're another stable/nightly/etc releases for some number of versions of Ubuntu. So for any future Ubuntu version its corresponding release can be checked there. – pkuderov Apr 20 at 2:42
  • @pkuderov Docker ce is not in that repository, the deb is also available only to containerd.io. I don't know if bionic would work instead of disco in that case. It's so frustrating. – andras Apr 20 at 7:08
  • @pkuderov You can edit the response accordingly – Yuval Pruss Apr 22 at 15:20
  • 2
    Guys, it looks like suffixes -ce and -ee are removed since ver. 18.09.0, so there's no mistake as far as I see. Checked my installation from test build - sudo docker run hello-world works correctly. The only problem I see - 19 ver is in beta. Sorry for confusing - only 2nd week using Linux :) – pkuderov Apr 22 at 17:36
9

Some of the guides jumped the gun; docker-ce is not available for Ubuntu 18.04 yet. You can check the list of supported versions here.

That same guide you linked to suggested installing docker.io; this is what I did. It's a workaround until docker-ce supports 18.04.

  • 1
    From the same guide, you can use repository for 17.10 instead at this moment: deb [arch=amd64] https://download.docker.com/linux/ubuntu artful stable – tan9 Apr 30 '18 at 16:28
  • @tan9 that should be the accepted answer - could you post it as an answer? – Robin Winslow May 3 '18 at 9:42
  • 1
    I am running 18.04, and pointing the URL to artful did not help for me. The only thing that worked was installing docker.io. – R J Jun 4 '18 at 13:01
6

Following the steps here in the Docker documentation worked for me. I just had to change stable to test in this command

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

I had the same issue, here is how I fixed it:

$ 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
  • That's the easiest and most elegant solution! Just run 'sudo apt install snapd' first :) – d.popov Sep 22 at 18:50
0

Snap package of docker will be easily install able on Ubuntu 19.04 (Disco) and it worked for me.

Check out the documentation for it here :

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


  • 1
    Welcome to AU. Could you edit your answer to provide a summary of the solution you give. This way, your answer will remain valid even even the link dispappears or changes. Thank you for your efforts. – Marc Vanhoomissen Jul 4 at 9:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.