Docker support

What you ideally need is a Debian stretch package for armhf. Looking at the repo, the latest version of Docker (17.05.0) has an armhf version for debian-jessie, raspbian-jessie, ubuntu-trusty and ubuntu-xenial.

The debian-stretch package is only available on the amd64 architecture, whereas debian-jessie is (and has been on older versions) available on both amd64 and armhf. Go figure.

That was my thinking @dillthedog. I wasnā€™t optimistic trying the debian-stretch and raspbian-jessie packages but figured Iā€™d try. That being the case, any suggestions for next steps? Reach out to the Docker project?

Why do you need Raspbian packages?
You can just use armhf packages.

Sam

I donā€™t. I was unclear in my post. I tried the debian-stretch package and the install failed. Because @inahike had success with raspbian-jessie, I was hoping I might have luck with a raspbian-stretch package (for newer osmc version). However, since there isnā€™t a raspbian-stretch package available, I tried jessie, of course it failed as well.

Being a curious kind of dog, I tried to install the Debian jessie package on a fully updated system ā€“ and it worked. Not sure why yours didnā€™t. I directly downloaded the package from the repo:

osmc@osmc:~$ wget http://apt.dockerproject.org/repo/pool/main/d/docker-engine/docker-engine_17.05.0~ce-0~debian-jessie_armhf.deb
--2018-10-10 06:31:17--  http://apt.dockerproject.org/repo/pool/main/d/docker-engine/docker-engine_17.05.0~ce-0~debian-jessie_armhf.deb
Resolving apt.dockerproject.org (apt.dockerproject.org)... 52.222.241.12
Connecting to apt.dockerproject.org (apt.dockerproject.org)|52.222.241.12|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 16555754 (16M) [application/vnd.debian.binary-package]
Saving to: ā€˜docker-engine_17.05.0~ce-0~debian-jessie_armhf.debā€™

docker-engine_17.05 100%[===================>]  15.79M   797KB/s    in 20s     

2018-10-10 06:31:39 (803 KB/s) - ā€˜docker-engine_17.05.0~ce-0~debian-jessie_armhf.debā€™ saved [16555754/16555754]

and then installed it:

osmc@osmc:~$ sudo dpkg -i docker-engine_17.05.0~ce-0~debian-jessie_armhf.deb
Selecting previously unselected package docker-engine.
(Reading database ... 26310 files and directories currently installed.)
Preparing to unpack docker-engine_17.05.0~ce-0~debian-jessie_armhf.deb ...
Unpacking docker-engine (17.05.0~ce-0~debian-jessie) ...
dpkg: dependency problems prevent configuration of docker-engine:
 docker-engine depends on libltdl7 (>= 2.4.2); however:
  Package libltdl7 is not installed.

dpkg: error processing package docker-engine (--install):
 dependency problems - leaving unconfigured
Processing triggers for systemd (232-25+deb9u4) ...
Processing triggers for man-db (2.7.6.1-2) ...
Errors were encountered while processing:
 docker-engine
osmc@osmc:~$ sudo apt-get install libltdl7
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  libltdl7
0 upgraded, 1 newly installed, 0 to remove and 5 not upgraded.
1 not fully installed or removed.
Need to get 386 kB of archives.
After this operation, 414 kB of additional disk space will be used.
Get:1 http://ftp.debian.org/debian stretch/main armhf libltdl7 armhf 2.4.6-2 [386 kB]
Fetched 386 kB in 31s (12.3 kB/s)        
Selecting previously unselected package libltdl7:armhf.
(Reading database ... 26518 files and directories currently installed.)
Preparing to unpack .../libltdl7_2.4.6-2_armhf.deb ...
Unpacking libltdl7:armhf (2.4.6-2) ...
Processing triggers for libc-bin (2.24-11+deb9u3) ...
Setting up libltdl7:armhf (2.4.6-2) ...
Setting up docker-engine (17.05.0~ce-0~debian-jessie) ...
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service ā†’ /lib/systemd/system/docker.service.
Created symlink /etc/systemd/system/sockets.target.wants/docker.socket ā†’ /lib/systemd/system/docker.socket.
Processing triggers for libc-bin (2.24-11+deb9u3) ...
Processing triggers for systemd (232-25+deb9u4) ...
osmc@osmc:~$ sudo dpkg -i docker-engine_17.05.0~ce-0~debian-jessie_armhf.deb
(Reading database ... 26526 files and directories currently installed.)
Preparing to unpack docker-engine_17.05.0~ce-0~debian-jessie_armhf.deb ...
Unpacking docker-engine (17.05.0~ce-0~debian-jessie) over (17.05.0~ce-0~debian-jessie) ...
Setting up docker-engine (17.05.0~ce-0~debian-jessie) ...
Processing triggers for systemd (232-25+deb9u4) ...
Processing triggers for man-db (2.7.6.1-2) ...
osmc@osmc:~$ systemctl status docker
ā— docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2018-10-10 06:43:29 UTC; 1min 34s ago
     Docs: https://docs.docker.com
 Main PID: 4121 (dockerd)
   CGroup: /system.slice/docker.service
           ā”œā”€4121 /usr/bin/dockerd -H fd://
           ā””ā”€4127 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir

Oct 10 06:43:27 osmc dockerd[4121]: time="2018-10-10T06:43:27.019854895Z" level=warning msg="Your kernel does not support cgroup blkio weight_device"
Oct 10 06:43:27 osmc dockerd[4121]: time="2018-10-10T06:43:27.020633800Z" level=warning msg="mountpoint for pids not found"
Oct 10 06:43:27 osmc dockerd[4121]: time="2018-10-10T06:43:27.022311036Z" level=info msg="Loading containers: start."
Oct 10 06:43:28 osmc dockerd[4121]: time="2018-10-10T06:43:28.440938352Z" level=info msg="Default bridge (docker0) is assigned with an IP address 172.
Oct 10 06:43:29 osmc dockerd[4121]: time="2018-10-10T06:43:29.158551160Z" level=info msg="Loading containers: done."
Oct 10 06:43:29 osmc dockerd[4121]: time="2018-10-10T06:43:29.199019466Z" level=warning msg="Not using native diff for overlay2: failed to set opaque 
Oct 10 06:43:29 osmc dockerd[4121]: time="2018-10-10T06:43:29.901670897Z" level=info msg="Daemon has completed initialization"
Oct 10 06:43:29 osmc dockerd[4121]: time="2018-10-10T06:43:29.902745790Z" level=info msg="Docker daemon" commit=89658be graphdriver=overlay2 version=1
Oct 10 06:43:29 osmc dockerd[4121]: time="2018-10-10T06:43:29.953273660Z" level=info msg="API listen on /var/run/docker.sock"
Oct 10 06:43:29 osmc systemd[1]: Started Docker Application Container Engine.

As you can see, there was a missing dependency, libltdl7, but docker installed successfully once that dependency was fixed.

Thanks for demonstrating a successful install. I followed your steps and ran into Failed to start Docker Application Container Engine.

osmc@osmc-turtle:~$ sudo dpkg -i docker-engine_17.05.0~ce-0~debian-jessie_armhf.deb
Selecting previously unselected package docker-engine.
(Reading database ... 55494 files and directories currently installed.)
Preparing to unpack docker-engine_17.05.0~ce-0~debian-jessie_armhf.deb ...
Unpacking docker-engine (17.05.0~ce-0~debian-jessie) ...
Setting up docker-engine (17.05.0~ce-0~debian-jessie) ...
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service -> /lib/system                                                                                                                        d/system/docker.service.
Created symlink /etc/systemd/system/sockets.target.wants/docker.socket -> /lib/systemd/sy                                                                                                                        stem/docker.socket.
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.
invoke-rc.d: initscript docker, action "start" failed.
* docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: exit-code) since Sat 2018-10-13 10:02:54 ED                                                                                                                        T; 35ms ago
     Docs: https://docs.docker.com
  Process: 23776 ExecStart=/usr/bin/dockerd -H fd:// (code=exited, status=1/FAILURE)
 Main PID: 23776 (code=exited, status=1/FAILURE)
      CPU: 551ms

Oct 13 10:02:54 osmc-turtle systemd[1]: Failed to start Docker Application Containerā€¦ine.
Oct 13 10:02:54 osmc-turtle systemd[1]: docker.service: Unit entered failed state.
Oct 13 10:02:54 osmc-turtle systemd[1]: docker.service: Failed with result 'exit-code'.
Hint: Some lines were ellipsized, use -l to show in full.
dpkg: error processing package docker-engine (--install):
 subprocess installed post-installation script returned error exit status 1
Processing triggers for systemd (232-25+deb9u4) ...
Processing triggers for man-db (2.7.6.1-2) ...
Errors were encountered while processing:
 docker-engine
osmc@osmc-turtle:~$ sudo systemctl status docker.service
* docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sat 2018-10-13 10:03:00 EDT; 1min 58s ago
     Docs: https://docs.docker.com
  Process: 24609 ExecStart=/usr/bin/dockerd -H fd:// (code=exited, status=1/FAILURE)
 Main PID: 24609 (code=exited, status=1/FAILURE)
      CPU: 506ms

Oct 13 10:03:00 osmc-turtle systemd[1]: Failed to start Docker Application Container Engi
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.service: Unit entered failed state.
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.service: Failed with result 'exit-code'.
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.service: Service hold-off time over, sched
Oct 13 10:03:00 osmc-turtle systemd[1]: Stopped Docker Application Container Engine.
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.service: Start request repeated too quickl
Oct 13 10:03:00 osmc-turtle systemd[1]: Failed to start Docker Application Container Engi
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.service: Unit entered failed state.
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.service: Failed with result 'exit-code'.

osmc@osmc-turtle:~$ journalctl -xe
-- Unit docker.socket has begun starting up.
Oct 13 10:03:00 osmc-turtle systemd[1]: Listening on Docker Socket for the API.
-- Subject: Unit docker.socket has finished start-up
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- Unit docker.socket has finished starting up.
--
-- The start-up result is done.
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.service: Start request repeated too quickl
Oct 13 10:03:00 osmc-turtle systemd[1]: Failed to start Docker Application Container Engi
-- Subject: Unit docker.service has failed
-- Defined-By: systemd
-- Support: https://www.debian.org/support
--
-- Unit docker.service has failed.
--
-- The result is failed.
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.socket: Unit entered failed state.
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.service: Unit entered failed state.
Oct 13 10:03:00 osmc-turtle systemd[1]: docker.service: Failed with result 'exit-code'.
Oct 13 10:04:59 osmc-turtle sudo[24690]:     osmc : TTY=pts/0 ; PWD=/home/osmc ; USER=roo
Oct 13 10:04:59 osmc-turtle sudo[24690]: pam_unix(sudo:session): session opened for user
Oct 13 10:05:16 osmc-turtle sudo[24690]: pam_unix(sudo:session): session closed for user

osmc@osmc-turtle:~$

Any additional suggestions?

Actually, it looks like I solved it. I had openvpn running. Once I disabled that I was able to restart docker.

osmc@osmc-turtle:~$ sudo systemctl status openvpn
* openvpn.service - OpenVPN service
   Loaded: loaded (/lib/systemd/system/openvpn.service; enabled; vendor preset: enabled)
   Active: active (exited) since Tue 2018-10-09 21:00:50 EDT; 3 days ago
 Main PID: 412 (code=exited, status=0/SUCCESS)
   Memory: 0B
      CPU: 0
   CGroup: /system.slice/openvpn.service

Oct 09 21:00:50 osmc-turtle systemd[1]: Starting OpenVPN service...
Oct 09 21:00:50 osmc-turtle systemd[1]: Started OpenVPN service.
osmc@osmc-turtle:~$ sudo systemctl restart docker.service
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.
osmc@osmc-turtle:~$ sudo systemctl stop openvpn.service
osmc@osmc-turtle:~$ sudo systemctl disable openvpn.service
Synchronizing state of openvpn.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install disable openvpn
osmc@osmc-turtle:~$ sudo systemctl daemon-reload
osmc@osmc-turtle:~$ sudo systemctl restart docker.service
osmc@osmc-turtle:~$ sudo systemctl status docker.service
* docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2018-10-13 10:19:07 EDT; 9s ago
     Docs: https://docs.docker.com
 Main PID: 25566 (dockerd)
   Memory: 9.1M
      CPU: 796ms
   CGroup: /system.slice/docker.service
           |-25566 /usr/bin/dockerd -H fd://
           `-25572 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --shim docker-co

Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.084374807-04:00" level=warning msg="mountpoint for pids not found"
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.086365080-04:00" level=info msg="Loading containers: start."
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.296387906-04:00" level=warning msg="Could not load necessary modules for IPSEC rules: Running modprobe xfrm_user failed with message: `modp
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.309315474-04:00" level=info msg="Default bridge (docker0) is assigned with an IP address 172.17.0.0/16. Daemon option --bip can be used to
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.597999676-04:00" level=info msg="Loading containers: done."
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.609061680-04:00" level=warning msg="Couldn't run auplink before unmount /var/lib/docker/tmp/docker-aufs-union459493381: exec: \"auplink\":
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.693741752-04:00" level=info msg="Daemon has completed initialization"
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.693890045-04:00" level=info msg="Docker daemon" commit=89658be graphdriver=aufs version=17.05.0-ce
Oct 13 10:19:07 osmc-turtle systemd[1]: Started Docker Application Container Engine.
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.751169422-04:00" level=info msg="API listen on /var/run/docker.sock"
lines 1-21/21 (END)
* docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2018-10-13 10:19:07 EDT; 9s ago
     Docs: https://docs.docker.com
 Main PID: 25566 (dockerd)
   Memory: 9.1M
      CPU: 796ms
   CGroup: /system.slice/docker.service
           |-25566 /usr/bin/dockerd -H fd://
           `-25572 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-conta

Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.084374807-04:00" le
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.086365080-04:00" le
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.296387906-04:00" le
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.309315474-04:00" le
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.597999676-04:00" le
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.609061680-04:00" le
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.693741752-04:00" le
Oct 13 10:19:07 osmc-turtle dockerd[25566]: time="2018-10-13T10:19:07.693890045-04:00" le
Oct 13 10:19:07 osmc-turtle systemd[1]: Started Docker Application Container Engine.
1 Like