140

I type docker.io version, and get:

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

I follow that with an apt-get update, then either: apt-get upgrade, or apt-get upgrade docker.io, but all it gives me is:

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

I'm running Ubuntu 14.04 (trusty) 64bit server.

EDIT: I think I used a script in this Post comment to install docker (since it purported to allow me to just type docker instead of docker.io)

3
  • 1
    How did you install docker?
    – jobin
    May 26, 2014 at 12:52
  • I don't know what's the objective of the script apart of renaming the "docker.io" binary to just "docker".
    – Braiam
    May 26, 2014 at 16:11
  • @Braiam: I wasn't really sure either, but since I'm not too familiar with linux O/S's, I was hoping it was doing something more useful than that (or perhaps this was just a better way than simply renaming the binary).
    – Gerrat
    May 26, 2014 at 16:49

9 Answers 9

159

Suppose it is Ubuntu Trusty (14.04) release, which has 0.9.1 officially

Update again in 2017/03/07 to reflect to the changes in new release, see https://blog.docker.com/2017/03/docker-enterprise-edition/

Official guideline is here Install docker for Ubuntu, old release had different package name.

  • docker.io: is used to be very old version in default ubuntu repo (can skip here)
  • docker-engine: is used before release 1.13.x
  • docker-ce: since 17.03

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

Then you can smoothly upgrade to latest docker version

$ sudo apt-get update

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

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

And in the case that you don't want to install latest package then you can do something like below.

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

for 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
8
  • 3
    Do you have any pros/cons of using this method vs. the one I found that installs from htts://get.docker.io ? I would think the one from the actual docker domain seems more official, but if it's the same guys that administer the docker-maint/testing ppa, then maybe it doesn't matter.
    – Gerrat
    May 29, 2014 at 11:55
  • I don't know, the link for your method is little old, PPA is the good choice for ubuntu user, and this comes from Docker Ubuntu maintainers team, it is also trust-able. Probably as you said, same guys with better way to serve the community ;-)
    – Larry Cai
    May 29, 2014 at 13:24
  • 1
    ----------Sold!
    – Gerrat
    May 29, 2014 at 13:33
  • @Gerrat seems back to your solution again if go for 1.0 now
    – Larry Cai
    Jun 12, 2014 at 1:09
  • 3
    gpg: no writable keyring found: eof -> use sudo... Aug 22, 2015 at 23:28
25

Warning: Since this is an older Post, please use to official resources to prevent issues: https://www.docker.com/community-edition#/download


One way to upgrade to the latest version (without installing from source) is to use the instructions here provided by Digital Ocean:

  1. Add docker repository key to apt-key for package verification

    sudo sh -c "wget -qO- https://get.docker.io/gpg | apt-key add -"
  2. Add the docker repository to aptitude sources:

    sudo sh -c "echo deb http://get.docker.io/ubuntu docker main\ > /etc/apt/sources.list.d/docker.list"
  3. Update the repository with the new addition:

    sudo aptitude update
  4. Finally, download and install docker:

    sudo aptitude install lxc-docker
3
  • 1
    This does mean, however, that you are deciding to use the potentially lesser stable upstream version. For example, after upgrading to upstream docker 1.1.0, I began seeing the error Driver aufs failed to remove root filesystem when removing certain containers. I never saw this with the docker.io package, which is presumably more tested and stable in Trusty. Jul 3, 2014 at 23:35
  • 1
    @Sridhar: Agreed. ...however, my original reason for upgrading, was that the current "tested and stable" version was either missing some key functionality (don't remember what now), or had some show-stopper bugs for me. ...and your particular complaint seems to be a bug that's existed for quite some time: see the three related bugs referenced at bottom of this page: coderwall.com/p/h24pgw
    – Gerrat
    Jul 4, 2014 at 13:32
  • Use the official resources for installation, these ones are obsolete... docker.com/community-edition#/download
    – schlenger
    Oct 25, 2017 at 16:02
13

Short answer: the official Docker install doc now covers this for Ubuntu 14.04 (though it's not as clear as it could be).

The Ubuntu package named docker.io is not maintained by Docker, Inc. and will lag behind the latest version. For example today it's stuck at 0.9.1 and latest is 1.0.1. I would go ahead and remove this if you have it.

The Docker package is named lxc-docker (confusingly, since LXC is no longer strictly required). It is however up to date. You will need to add the Docker-owned repo to your apt-get setup. The official Docker install doc covers this for Ubuntu 14.04 - look for "If you'd like to try the latest version of Docker". Note, the binary will be docker (as opposed to docker.io when provided by Ubuntu).

0
12

If you trust get.docker.com, run:

curl -sSL https://get.docker.com/ | sudo bash
1
  • 1
    > Warning: the "docker" command appears to already exist on this system. If you already have Docker installed, this script can cause trouble
    – ecoologic
    Jan 31, 2021 at 22:51
8

You can install from the third-party repository following the instructions:

$ 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

You have the latest version of docker.io (0.9.1) which is available in the ubuntu repositories for Trusty Tahr as of today.

However, if you still want to upgrade the version, you can clone the latest version of docker.io from github and recompile. For instructions regarding installing it from source, there is an interactive tutorial on docker.io's blog.

3
  • Thanks, but I just did the interactive tutorial. It says nothing about installing it from source - it just goes through some very basic docker commands.
    – Gerrat
    May 26, 2014 at 13:24
  • The reason I need a later version is that it is completely bombing trying to run an imported image. The image runs fine on the latest stable version: 0.11.1. I'm running the latest stable version on another machine, and I'm not exactly sure how I got it, but it's unlikely I compiled it from source. Is there maybe just another repository that has the latest stable version at?
    – Gerrat
    May 26, 2014 at 13:26
  • You were helpful in tweaking my memory on how I installed the latest version.
    – Gerrat
    May 26, 2014 at 13:41
1

or just simply sudo apt-get install -f docker-ce to get the latest stable

1
  • 2
    this didn't work for me - I get - E: Package 'docker-ce' has no installation candidate May 19, 2018 at 0:16
1

I most commonly used to install the latest Docker and docker-compose:

2
  • Welcome to Ask Ubuntu. While these links might answer the question, it's better to add essential parts here.
    – user833907
    Nov 17, 2020 at 1:47
  • These scripts are a bit dangerous, because they would also remove any package that have "docker" in their name, e.g. docker-registry
    – knb
    Feb 12, 2021 at 18:31
0

You also can download the docker.io 0.11.1 .deb file from Launchpad and install.

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
1
  • Interesting. It looks like that was just set up a few weeks ago.
    – Gerrat
    May 26, 2014 at 14:28

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .