In my laptop I work mostly with LXD to have containers for development and manage LXD containers in production (integrated with Ansible).
I have one requirement to use docker/docker-compose
for deployment. I know that I can install docker.io
package (that have the patches for LXC compatibility) but now, Docker promote the use of Docker-CE/Docker-EE. In this case will be Docker-CE.
Do this one have the patches from the docker.io
package that come in Ubuntu? or in the future the Docker-CE engine will can be deployed from the Canonical repositories or a PPA?
I know this question is old, but I believe that docker upstream has released a version that supports this now, so I thought I would just put up an answer on here. So, in Ubuntu, you really have 2 options as of 18.04 (and really these mostly work on 16.04 as well):
docker upstream archive
Currently, docker upstream recommends a more involved set of instructions installing from a custom archive, etc. This can also meet your needs as long as you grab their 17.06 and newer.
docker.io
packagesudo apt install docker.io
This is versioned and updated by Canonical/Ubuntu community members quite regularly, but does tend to lag upstream a bit. You can keep this package held just like your regular apt packages on ubuntu. You can read more about the SRU exception on the Ubuntu wiki to see the quality controls that go into this. The version in Xenial and Bionic are on or approaching 17.03, but they do appear to contain the patch you need to run in LXD.
Edit note: https://github.com/docker/docker-snap - docker snap no longer recommended as of this update (25 Sep 2018). If this changes in the future, feel free to edit this answer.