Docker on GL-AX1800 Flint not working

I’m unable to get the docker daemon running? I get:

root@GL-AX1800:~# docker ps
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

I have done the following:

  • Updated to firmware 4.2.1
  • extroot a USB stick using the official guide so plenty of disk space
  • Installed the dockerd, docker & luci-app-dockerman packages
  • Ran service dockerd start

When running dockerd, I get:
failed to start daemon: Devices cgroup isn't mounted

Anyone able to replicate this?

Any help / thoughts appreciated.

Thanks

Do you see any other errors when installing dockerd?

@radishman Only the following error when installing (opkg install docker dockerd luci-app-dockerman):

Configuring btrfs-progsuci: Entry not found

The following error when running docker (dockerd):

failed to start daemon: Devices cgroup isn't mounted

See attached install.txt & dockerd.log for the full output
docker_install.zip (2.7 KB)

Also, Same device, same procedure.

It’s so annoying that I followed many guides just to get more space to install images/containers on SD card. This alone was tedious and involved many failures, as the AX1800 initially simply did not want to recognize the SD card on its own. After a few restarts and new settings of the entire router, since it is not explained anywhere that after integrating a new overlay mount the router also goes to “factory settings”, it finally worked and I was very happy.

Then I install Docker from the official repository from the preconfigured opkg repos, i.e. not from any dubious sources that have nothing to do with openWRT.
The first thing I noticed was that Dockerman shows nothing more than a “configuration page”… There is no information as to why Docker management is not possible there. After many annoying attempts, I found out that it was probably because the service wasn’t started and couldn’t be started because something was missing.

failed to start daemon: Devices cgroup isn’t mounted

Why is it in the repo if it doesn’t work anyway?

Finally I came across the post in the OpenWRT forum where you have to build your own openWRT image in order to build support for cgroup into the kernel.
I won’t pursue this any further now because:
a) it’s not certain that it will work at all (who knows what will happen or won’t work after I’ve spent hours building an image)
b) I then no longer have a gl.Inet web interface. (I strongly assume)

That everything always has to be so complicated…

And now the haters can talk about my post.

I like gl.inet products and have been buying them for years. Even if this problem is not directly related (or maybe it is?) to gl.inet:
I see it like the German TÜV does when it comes to the technical inspection of a car: If something is available and installed, it must work.

2 Likes

Why are you wanting to run docker on the Flint? Isn’t it quite limited on space? Grab a raspberry pi 4 and run it on there would be my suggestion.
I could imagine the Flint may struggle a little if you end up running a heap of containers too.

I actually think it’s an excellent idea. I bought Flint 2 and I’m definitely going to try running docker on it once I get it set up

Flint 2 should be fine. But post was about Flint 1

Uh sorry… i’am actually using AXT1800.

Argh my bad sorry. I always get confused between the 2. AXT1800 and AX1800

Does docker work on the Flint 2?

Yes, depend on the firmware, I got it working on 4.5.3

1 Like

Was it as simple as following the instructions?
https://openwrt.org/toh/gl.inet/gl-mt6000#docker

Hello!

I’ve been digging around on this for a few hours and I figured I’d post an update to what I’ve found here.

Versions:
Linux Bebop 4.4.60 #0 SMP PREEMPT Thu Mar 21 14:19:45 2024 armv7l GNU/Linux
OpenWrt 21.02-SNAPSHOT r16399+165-c67509efd7
GL.iNet firmware from: openwrt-axt1800-4.5.16-0321-1711033518.tar

I do not believe the version of the kernel can support this because there is no “devices” cgroup defined in /proc/cgroups:

root@Bebop:/etc/config# cat /proc/cgroups
#subsys_name	hierarchy	num_cgroups	enabled
cpuset	13	1	1
cpu	14	1	1
cpuacct	15	1	1
blkio	16	1	1
memory	17	1	1
pids	18	1	1

I’ve gotten dockerd to run to the point where it complains that there is no Devices cgroup and quits. I’ve read in other places that if you can modify kernel boot parameters, you can enable this somehow(?) but I haven’t tested that because I don’t know how to set that for this router.

tl;dr, I’m just going to glue a raspberry to the damn thing and call it a day

Should be the best way anyway, yep.

1 Like