Comments (28)
With the launch of the Raspberry Pi 4 and therefore Buster already available for download/install, I am also not able to install Docker properly on my Pi.
from docker-install.
It just got merged. Users of the new Raspbian Buster image will still run into an error as there is no Buster branch available yet: https://download.docker.com/linux/raspbian/dists/
Workaround for now, as the Stretch package should still work:
sed -i 's/buster/stretch/' /etc/apt/sources.list.d/docker.list
apt update
apt install docker-ce docker-ce-cli
from docker-install.
I had to use
sed -i 's/10/stretch/' /etc/apt/sources.list.d/docker.list
apt update
apt install docker-ce docker-ce-cli
instead of what was in @MichaIng's comment for raspbian
from docker-install.
@JesperG
The Raspbian Buster branch is now available, but does not yet contain a stable component: https://download.docker.com/linux/raspbian/dists/buster/
So for now you need to go with "nightly":
sed -i 's/stable/nightly/' /etc/apt/sources.list.d/docker.list
apt update
apt install docker-ce docker-ce-cli
Or you go with stable Stretch (which at least works on Buster according to my tests): #125 (comment)
from docker-install.
cat << _EOF_ > /etc/apt/sources.list.d/docker.list deb [arch=armhf] https://download.docker.com/linux/raspbian buster nightly deb [arch=armhf] https://download.docker.com/linux/raspbian stretch stable _EOF_ apt update apt install --no-install-recommends docker-ce docker-ce-cli
@MichaIng I did this now, purged my installed docker-ce and docker-ce-cli and tried again with
apt install --no-install-recommends docker-ce docker-ce-cli
Now I get this error here:
It is likely that 4.19.57-v7+ belongs to a chroot's host
Building for 4.19.57+, 4.19.57-v7+ and 4.19.57-v7l+
Building initial module for 4.19.57+
Error! Bad return status for module build on kernel: 4.19.57+ (armv7l)
Consult /var/lib/dkms/aufs/4.19+20190211/build/make.log for more information.
dpkg: error processing package aufs-dkms (--configure):
installed aufs-dkms package post-installation script subprocess returned error exit status 10
Setting up docker-ce (5:18.09.03-0raspbian-stretch) ...
update-alternatives: using /usr/bin/dockerd-ce to provide /usr/bin/dockerd (dockerd) in auto mode
Processing triggers for man-db (2.8.5-2) ...
Errors were encountered while processing:
aufs-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
I use a raspberry 3 (4.19.57-v7+)
EDIT: Now it worked! Problem was that apt purge
was not able to purge the packages properly. A apt autoremove
fixed that and I was able to install with apt install --no-install-recommends docker-ce docker-ce-cli
finally
from docker-install.
Today, it worked for debian buster amd64, so the issue is fixed for me without modifications nor hacks.
Thank you all
gerard@debian:~$ wget -qO- get.docker.com | bash
# Executing docker install script, commit: 6bf300318ebaab958c4adc341a8c7bb9f3a54a1a
+ sudo -E sh -c 'apt-get update -qq >/dev/null'
+ sudo -E sh -c 'apt-get install -y -qq apt-transport-https ca-certificates curl gnupg >/dev/null'
+ sudo -E sh -c 'curl -fsSL "https://download.docker.com/linux/debian/gpg" | apt-key add -qq - >/dev/null'
Warning: apt-key output should not be parsed (stdout is not a terminal)
+ sudo -E sh -c 'echo "deb [arch=amd64] https://download.docker.com/linux/debian buster stable" > /etc/apt/sources.list.d/docker.list'
+ sudo -E sh -c 'apt-get update -qq >/dev/null'
+ '[' -n '' ']'
+ sudo -E sh -c 'apt-get install -y -qq --no-install-recommends docker-ce >/dev/null'
+ sudo -E sh -c 'docker version'
Client:
Version: 18.09.7
API version: 1.39
Go version: go1.10.8
Git commit: 2d0083d
Built: Thu Jun 27 17:56:40 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.7
API version: 1.39 (minimum version 1.12)
Go version: go1.10.8
Git commit: 2d0083d
Built: Thu Jun 27 17:23:02 2019
OS/Arch: linux/amd64
Experimental: false
If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:
sudo usermod -aG docker gerard
Remember that you will have to log out and back in for this to take effect!
WARNING: Adding a user to the "docker" group will grant the ability to run
containers which can be used to obtain root privileges on the
docker host.
Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
for more information.
gerard@debian:~$
from docker-install.
@Ciantic
Please check the posts above. In case of all RPi on Raspbian Buster, one must currently run:
curl -sSL get.docker.com | CHANNEL='nightly' bash
from docker-install.
@Ciantic
I guess aufs-dkms came from an earlier attempt to install Docker without --no-install-recommends
.
- aufs-tools are a recommendation for docker-ce, but no dependency: https://download.docker.com/linux/raspbian/dists/buster/nightly/binary-armhf/Packages
- aufs-dkms again is a recommendation for aufs-tools, but no dependency. But DKMS in general requires the kernel headers to be available, which is not default on RPi, thus it fails to configure.
For this reason I tend to disable recommends install by default on all systems, e.g.
cat << _EOF_ >> /etc/apt/apt.conf.d/99norecommends
APT::Install-Recommends "false";
APT::Install-Suggests "false";
APT::AutoRemove::RecommendsImportant "false";
APT::AutoRemove::SuggestsImportant "false";
_EOF_
- This prevent install of recommends (and suggestions, which is default anyway) by default.
- And it allows to autoremove them:
apt autoremove --purge
- Of course be careful with this, check if there is anything contained that you actually want. But in this case it should be marked as manual installed:
apt-mark manual package_i_need
- Of course be careful with this, check if there is anything contained that you actually want. But in this case it should be marked as manual installed:
from docker-install.
#126 fixes it, please merge
from docker-install.
Thank you for your quick action i can go back and play with my buster host deployments :)
from docker-install.
@j616
Jep, I didn't think about that even that it got merged, the change has not yet been uploaded to: https://get.docker.com/
from docker-install.
Debian Buster has been released on 2019-07-06, the change has not yet been uploaded to https://get.docker.com/ π
from docker-install.
Not sure if still relevant, but the script (as of today), generates the apt sources line with "10" instead of "buster". This causes failure to install, and I had to change it manually, repeat the "apt update" and the "apt install docker-ce".
Should be interesting to put a link "10 -> buster" in the apt server https://download.docker.com/linux/debian/dists/ or fix the script.
Thanks
from docker-install.
Not sure if still relevant
This is what the whole topic + solution is about π. The master branch already contains the fix: https://github.com/docker/docker-install/blob/master/install.sh#L297-L299
But https://get.docker.com/ still ships the old version...
Not sure if there were other relevant changes that need to be tested first but IMO things should be tested BEFORE merging into the main branch (master), so they can be uploaded immediately. But that's a question of individual schedules.
from docker-install.
Great!
Master branch release worked for me; this should count as another test on debian 10, amd64. I did:
wget -qO- https://raw.githubusercontent.com/docker/docker-install/master/install.sh | bash
Regards
from docker-install.
I tried on a fresh Raspbian on Raspberry Pi 3B.
pi@raspberrypi:~ $ uname -a
Linux raspberrypi 4.19.57-v7+ #1244 SMP Thu Jul 4 18:45:25 BST 2019 armv7l GNU/Linux
It failed for my setup with the following command and output:
pi@raspberrypi:~ $ wget -qO- https://raw.githubusercontent.com/docker/docker-install/master/install.sh | bash
# Executing docker install script, commit: UNKNOWN
- sudo -E sh -c 'apt-get update -qq >/dev/null'
- sudo -E sh -c 'apt-get install -y -qq apt-transport-https ca-certificates curl >/dev/null'
- sudo -E sh -c 'curl -fsSL "https://download.docker.com/linux/raspbian/gpg" | apt-key add -qq - >/dev/null'
Warning: apt-key output should not be parsed (stdout is not a terminal) - sudo -E sh -c 'echo "deb [arch=armhf] https://download.docker.com/linux/raspbian buster stable" > /etc/apt/sources.list.d/docker.list'
- sudo -E sh -c 'apt-get update -qq >/dev/null'
- '[' -n '' ']'
- sudo -E sh -c 'apt-get install -y -qq --no-install-recommends docker-ce >/dev/null'
E: Package 'docker-ce' has no installation candidate
from docker-install.
getting the following error when I try to install nightly
for raspbian buster
:
sudo apt install docker-ce docker-ce-cli
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
docker-ce : Depends: containerd.io (>= 1.2.2-3) but it is not installable
Recommends: aufs-tools but it is not going to be installed
Recommends: cgroupfs-mount but it is not going to be installed or
cgroup-lite but it is not installable
Recommends: git but it is not going to be installed
Recommends: pigz but it is not going to be installed
Recommends: libltdl7 but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Don't get this error when using stretch stable
repo but other:
Setting up docker-ce-cli (5:18.09.0~3-0~raspbian-stretch) ...
Setting up aufs-dkms (4.19+20190211-1) ...
Loading new aufs-4.19+20190211 DKMS files...
It is likely that 4.19.57-v7+ belongs to a chroot's host
Building for 4.19.57+, 4.19.57-v7+ and 4.19.57-v7l+
Building initial module for 4.19.57+
Error! Bad return status for module build on kernel: 4.19.57+ (armv7l)
Consult /var/lib/dkms/aufs/4.19+20190211/build/make.log for more information.
dpkg: error processing package aufs-dkms (--configure):
installed aufs-dkms package post-installation script subprocess returned error exit status 10
Setting up pigz (2.4-1) ...
Setting up git-man (1:2.20.1-2) ...
Setting up cgroupfs-mount (1.4) ...
Setting up docker-ce (5:18.09.0~3-0~raspbian-stretch) ...
update-alternatives: using /usr/bin/dockerd-ce to provide /usr/bin/dockerd (dockerd) in auto mode
Created symlink /etc/systemd/system/multi-user.target.wants/docker.service β /lib/systemd/system/docker.service.
Setting up git (1:2.20.1-2) ...
Processing triggers for systemd (241-5+rpi1) ...
Processing triggers for man-db (2.8.5-2) ...
Processing triggers for libc-bin (2.28-10+rpi1) ...
Errors were encountered while processing:
aufs-dkms
E: Sub-process /usr/bin/dpkg returned an error code (1)
from docker-install.
@rradar
Fist of all I forgot to add --no-install-recommends
to avoid installing recommendations. It's default on my systems, on yours obviously not, so better: apt install --no-install-recommends docker-ce docker-ce-cli
But containerd.io
is a dependency, so the above does not solve the error.
Indeed the nightly branch does not have this package, seems to be not yet ready for use.
See Buster nightly: https://download.docker.com/linux/raspbian/dists/buster/pool/nightly/armhf/
Compare Stretch stable: https://download.docker.com/linux/raspbian/dists/stretch/pool/stable/armhf/
containerd.io (>= 1.2.2-3)
So it would actually work with the containered.io package from Stretch stable, so:
cat << _EOF_ > /etc/apt/sources.list.d/docker.list
deb [arch=armhf] https://download.docker.com/linux/raspbian buster nightly
deb [arch=armhf] https://download.docker.com/linux/raspbian stretch stable
_EOF_
apt update
apt install --no-install-recommends docker-ce docker-ce-cli
Setting up aufs-dkms (4.19+20190211-1) ...
Loading new aufs-4.19+20190211 DKMS files...
It is likely that 4.19.57-v7+ belongs to a chroot's host
Building for 4.19.57+, 4.19.57-v7+ and 4.19.57-v7l+
Building initial module for 4.19.57+
Error! Bad return status for module build on kernel: 4.19.57+ (armv7l)
Consult /var/lib/dkms/aufs/4.19+20190211/build/make.log for more information.
dpkg: error processing package aufs-dkms (--configure):
Puhh not sure if this is related to Stretch Docker vs Buster RPi firmware repo. But actually AFAIK the firmware/kernel packages are identical it it should not matter from which distro branch they are... And it worked for me some weeks ago, but this was before RPi4 compatible Raspbian Buster (+related firmware updates) were released, I used Buster already since 1.5 years ago.
Which RPi do you use? You could try to remove non-matching kernel from /boot
and /lib/modules
. 4.19.57+
is RPi1+Zero, 4.19.57-v7+
is RPi2+3 and 4.19.57-v7l+
is RPi4. uname -a
to be 100% sure which kernel is in use. However I would go with the above first, to grab containerd.io
from Stretch + Docker from Buster nightly.
from docker-install.
@rradar
Great, I just wanted to say that from the output still the Stretch package was about to be handled:
Setting up docker-ce (5:18.09.03-0raspbian-stretch) ...
So purging + autoremoving + installing finally pulls the correct packages from Buster. If you find any issue with the setup you might want to report to the actual Docker Linux repo. E.g. I found an ongoing topic about Docker on Raspbian Buster where you could contribute in case: docker/for-linux#709
from docker-install.
I don't know why but now my docker setup (hassio) install fails with:
[Info] Install supervisor Docker container
could not get decompression stream: fork/exec /usr/bin/unpigz: no such file or directory
with raspbian stretch this (curl -sL "https://raw.githubusercontent.com/home-assistant/hassio-installer/master/hassio_install.sh" | bash -s -- -m raspberrypi3
) works without errors.
from docker-install.
/usr/bin/unpigz: no such file or directory
https://packages.debian.org/buster/pigz: apt install pigz
?
I would have expected Docker resolving such dependencies internally, however at least worth to give it a try.
from docker-install.
apt install pigz
?
I would have expected Docker resolving such dependencies internally, however at least worth to give it a try.
This did actually help... Running the install script again and this time it succeeded!
Thank's!
from docker-install.
@rradar
Great. Looks like docker itself uses unpigz
when pulling containers: https://github.com/home-assistant/hassio-installer/blob/master/hassio_install.sh#L140-L143
AFAIK this is only another gzip implementation, so strange it does not use gzip..
pigz allows to use multiple cores/threads, but it should be only used, when available, else revert to use gzip. Will check bug reports...
EDIT: Fallback is actually the case... no idea why this didn't work in your case: https://github.com/docker/docker-ce/blob/master/components/engine/pkg/archive/archive.go#L30-L39
But gzip is available on your system, right? dpkg -l gzip
from docker-install.
The script from get.docker.com AND test.docker.com fails on Debian 10 Buster:
sudo sh get-docker.sh
# Executing docker install script, commit: 36b78b2
Either your platform is not easily detectable or is not supported by this
installer script.
Please visit the following URL for more detailed installation instructions:
https://docs.docker.com/engine/installation/
sudo sh test-docker.sh
# Executing docker install script, commit: 36b78b2
Either your platform is not easily detectable or is not supported by this
installer script.
Please visit the following URL for more detailed installation instructions:
https://docs.docker.com/engine/installation/
lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 10 (buster)
Release: 10
Codename: buster
lsb_release -cs
buster
from docker-install.
It didn't work with raspberry pi 4 using "get.docker.com":
# Executing docker install script, commit: 6bf300318ebaab958c4adc341a8c7bb9f3a54a1a
+ sudo -E sh -c apt-get update -qq >/dev/null
+ sudo -E sh -c apt-get install -y -qq apt-transport-https ca-certificates curl >/dev/null
+ sudo -E sh -c curl -fsSL "https://download.docker.com/linux/raspbian/gpg" | apt-key add -qq - >/dev/null
Warning: apt-key output should not be parsed (stdout is not a terminal)
+ sudo -E sh -c echo "deb [arch=armhf] https://download.docker.com/linux/raspbian buster stable" > /etc/apt/sources.list.d/docker.list
+ sudo -E sh -c apt-get update -qq >/dev/null
+ [ -n ]
+ sudo -E sh -c apt-get install -y -qq --no-install-recommends docker-ce >/dev/null
E: Package 'docker-ce' has no installation candidate
pi@raspberrypi:~ $
from docker-install.
@MichaIng I got it working, thanks. It however gave me aufs-dkms
problems afterwards. I then used this sudo apt-get --purge remove aufs-dkms
and it seems to fix it.
from docker-install.
Is this issue related with: "Debian bionic Release' does not have a Release file" when using Docker script to install on Ubuntu18 ?
from docker-install.
closing, as debian 10 "buster" came and went
from docker-install.
Related Issues (20)
- elementary os 7 horus has no release file HOT 6
- Segmentation fault on Raspberry Pi 3
- rootless installation failing on Raspberry PI
- Docker installation on S390X - RHEL 8.9
- Ubuntu 20.04 apt-get update fails - cannot get apt lists lock HOT 1
- Install script doesnΒ΄t deploy beta/test version
- arm64 install packages for armbian are missing and docker can't be installed HOT 1
- docker compose pull won't refresh images with :latest tag HOT 1
- Rocky Linux. get-docker.sh curl setup not yet supported. HOT 6
- File has unexpected size (26476 != 27148). Mirror sync in progress? HOT 3
- broken mirror due to upstream package resign HOT 8
- yum is no longer available by default in CentOS Stream 9
- version error HOT 2
- What is the reason for WSL2 not being supported ? HOT 2
- Wait for dpgk lock to be released
- [Rootless] Rootless Docker install fails in a docker build due to an unneeded line *somewhere* HOT 2
- Hash sum mismatch when installing through the install script. HOT 1
- Calendar Versioning
- Need solution for running dev container with rootless Docker HOT 1
- [Azure Mirror for Docker] https://mirror.azure.cn packages failing with File has unexpected size
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from docker-install.