Arch linux [Armv7] docker install - linux

I've installed Docker via pacman -S docker, but when I'm trying to run Dockerd it says
INFO[0000] libcontainerd: new containerd process, pid: 9792
WARN[0000] containerd: low RLIMIT_NOFILE changing to max current=1024 max=4096
FATA[0001] Your Linux kernel version 3.4.39 is not supported for running docker. Please upgrade your kernel to 3.10.0 or newer.
I'm trying to run it with DOCKER_NOWARN_KERNEL_VERSION=1 and it gives me
INFO[0000] libcontainerd: new containerd process, pid: 9810
WARN[0000] containerd: low RLIMIT_NOFILE changing to max current=1024 max=4096
ERRO[0001] [graphdriver] prior storage driver devicemapper failed: devicemapper: Error running deviceCreate (CreatePool) dm_task_run failed
Error starting daemon: error initializing graphdriver: devicemapper: Error running deviceCreate (CreatePool) dm_task_run failed
What did I do wrong?!..
Running this on Orang Pi PC
Thanks

I've found, that kernel > 4.0 does exist for this Pi. I've installed Armbian on my Orange Pi PC and I'm sure that it the best thing you could install. I goes with linux-4.10.3 on the board and works fine.

Related

Docker service does not start anymore after Ubuntu 18.04 update: dm_task_run failed / no such device storage-driver=overlay2

After I triggered an unattended-upgrade on Ubuntu 18.04 (currently 18.04.5) and rebooted the server my docker service does not start anymore. So I tried to run it manually with sudo dockerd but got the following errors:
failed to mount overlay: no such device storage-driver=overlay2 docker
failed to start daemon: error initializing graphdriver: driver not
supported
After fiddling around with various suggestions (incl. the obligatory reboot x times) I gave up and uninstalled docker (incl. deleting usr/lib/docker) to reinstall the newest version. But this only changed the error message to:
failed to start daemon: error initializing graphdriver: devicemapper:
Error running deviceCreate (CreatePool) dm_task_run failed
I have more than enough disk space and already tried to delete the /usr/lib/docker folder (which btw. doesn't have an overlay2 folder which my previous installation at least had), but those suggestions didn't work. If I force --storage-driver=overlay2 I get the old "failed to mount overlay:..." from above.
I am now totally clueless how to solve this problem. Any ideas?
Edit: It seems that all the dm_* errors shouldn't be my problem, since they come from devicemapper which shouldn't be used. Instead the overlay2 stuff should work. So it all boils down to: Why does overlay2 not work (anymore?) on my machine?
Current versions:
Ubuntu 18.04.5 LTS (GNU/Linux 4.15.0-106-generic x86_64)
Docker version 19.03.12, build 48a66213fe
Full error message:
INFO[2020-09-10T12:38:41.720023381+02:00] Starting up
INFO[2020-09-10T12:38:41.721017055+02:00] detected 127.0.0.53
nameserver, assuming systemd-resolved, so using resolv.conf:
/run/systemd/resolve/resolv.conf
INFO[2020-09-10T12:38:41.723286420+02:00] parsed scheme: "unix"
module=grpc INFO[2020-09-10T12:38:41.723397263+02:00] scheme "unix"
not registered, fallback to default scheme module=grpc
INFO[2020-09-10T12:38:41.723468274+02:00] ccResolverWrapper: sending
update to cc: {[{unix:///run/containerd/containerd.sock 0 }]
} module=grpc INFO[2020-09-10T12:38:41.723493045+02:00]
ClientConn switching balancer to "pick_first" module=grpc
INFO[2020-09-10T12:38:41.727552254+02:00] parsed scheme: "unix"
module=grpc INFO[2020-09-10T12:38:41.727619515+02:00] scheme "unix"
not registered, fallback to default scheme module=grpc
INFO[2020-09-10T12:38:41.727666336+02:00] ccResolverWrapper: sending
update to cc: {[{unix:///run/containerd/containerd.sock 0 }]
} module=grpc INFO[2020-09-10T12:38:41.727698707+02:00]
ClientConn switching balancer to "pick_first" module=grpc
ERRO[2020-09-10T12:38:41.845132923+02:00] [graphdriver] prior storage
driver devicemapper failed: devicemapper: Error running deviceCreate
(CreatePool) dm_task_run failed failed to start daemon: error
initializing graphdriver: devicemapper: Error running deviceCreate
(CreatePool) dm_task_run failed
I finally found the solution: It seems that the ubuntu update messed up while updating the kernel. After reinstalling the kernel everything works fine again and docker runs with overlay2.
So for me it was:
sudo apt-get install --reinstall linux-image-4.15.0-106-generic

Systemd cgroup flag passed, but systemd support for managing cgroups is not available - Docker error

I had installed docker in my aws linux machine a while ago and was using it for kong testing purposes,
Machine details:
Linux ip-172-31-10-102 4.9.70-22.55.amzn1.x86_64 #1 SMP Wed Dec 20 23:36:28 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Today when i tried to run normal hello-world container in my docker, i am facing the following error.
[root#ip-172-31-10-102 ~]# docker run hello-world
systemd cgroup flag passed, but systemd support for managing cgroups is not
available
docker: Error response from daemon: oci runtime error: systemd cgroup flag
passed, but systemd support for managing cgroups is not available.
ERRO[0000] error waiting for container: context canceled
I am not sure what configuration has messed in here,i am able to see docker info and container list everything but not able to run a container.
i tried re-installing dockers but still see the same error.

Docker daemon throwing error while starting in Linux RHEL

I am trying to start my dockerd daemon by this command - dockerd &
Then i start getting the error as below -
ERRO[0036] libcontainerd: failed to receive event from containerd: rpc error: code = 12 desc = unknown service types.API
This keeps rolling again and again and i am unable to start any container after that. If i close the session and open a new session, i could see docker ps is accessible. But i am unable to start any container. While starting the container I am getting error -
docker run hello-world
docker: Error response from daemon: unknown service types.API. ERRO[0000] error waiting for container: context canceled
Please let me know if any logs are needed.
Why do you start the docker daemon using dockerd & and not systemctl start docker.service? This is probably the cause of your problem.
In order to start the daemon at boot, you need to run systemctl enable docker.service. See Getting Started with Containers.
Note that the kernel for Red Hat Enterprise Linux 6 only supports a limited subset of the functionality needed for container support, and I don't think anyone tests either the daemon or container images on that operating system version.

Cannot connect to the Docker daemon After I update the linux kernel

The docker daemon worked fine before, but after I update the linux kernel version from 4.10 to 4.12, I found that the Docker daemon can't work:
When I run docker ps comes the error:
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
and I run systemctl status docker.service to see the details, it outputs the error:
systemd[1]: Failed to start Docker Application Container Engine.
and the detail error from dockerd':
ERRO[0001] [graphdriver] prior storage driver aufs failed: driver not supported
Error starting daemon: error initializing graphdriver: driver not supported
OS: linux Ubuntu 16.04 LTS kernel: v4.12, docker version :Docker version 17.07.0-ce, build 8784753

dockerd: Error running deviceCreate (CreatePool) dm_task_run failed

I'm building some CentOS VM with VMWare, with no access to internet, so I've downloaded and made local repositories, including this one
Then I have installed docker-engine.x86_64, and when starting the docker daemon, I get the following errors :
[root]# dockerd
DEBU[0000] docker group found. gid: 993
...
...
DEBU[0001] Error retrieving the next available loopback: open /dev/loop-control: no such device
ERRO[0001] **There are no more loopback devices available.**
ERRO[0001] [graphdriver] prior storage driver "devicemapper" failed: loopback attach failed
DEBU[0001] Cleaning up old mountid : start.
FATA[0001] Error starting daemon: error initializing graphdriver: loopback attach failed
After manually add the loop module which control loop device with this command :
insmod /lib/modules/3.10.0-327.36.2.el7.x86_64/kernel/drivers/block/loop.ko
The error changes to :
[graphdriver] prior storage driver "devicemapper" failed: devicemapper: Error running deviceCreate (CreatePool) dm_task_run failed
I've read that it could be because I have not enough space disk, I think it's not that, any idea?
[root]# df -k .
Filesystem blocs de 1K Used Available Used Mounted on
/dev/mapper/centos-root 51887356 2436256 49451100 5% /
I got the "There are no more loopback devices available" error, which stopped dockerd from running.
I fixed it by ensuring the storage driver was 'overlay':
# /usr/bin/dockerd -D --storage-driver=overlay
This was on Debian Jessie and docker running as a systemd service/unit.
To make it permanent, I created a systemd drop-in:
$ cat /etc/systemd/system/docker.service.d/docker.conf
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// --storage-driver=overlay

Resources