Support for containers and virtualization

Hi,
It would be nice if GL.iNet added support for containers and virtualization in their products.

The latest GL.iNet products are mainly based on aarch64. This platform natively supports virtualization using KVM. Using KVM will have a bit more performance overhead than with containers. But still the solution is very useful.
In theory, we can even run Windows 11 because GL.iNet routers can already provide 1 GB of RAM. For sure, models with 2 and 4 GB of RAM appear in the year two. But personally I don’t think Windows 11 is a good idea on a GL.iNet device.

Below is why I use it as a good idea:

  1. Ability to run systems such as Archlinux, Fedora or Ubuntu.
    These systems have a lot of packages for aarch64. In practice, we can run almost any package using Ubuntu repositories or solutions like box86.
    Recently, Mikrotik natively added container support via docker. I’ve now seen on Reddit that people are massively using it as a better version of the Ubiquiti controller.

  2. Security
    If we do not want to run some software on our router, we can run it in a container or a virtual machine. With a good configuration, we get security.

  3. Access to newer versions of packages than those available for our version of OpenWRT.
    This enables us to run new secure applications without OpenWRT support.

  4. Possibility to experiment packages without putting garbage in OpenWRT.
    Containers or VM can be easily deleted or snapshot restored without impact to router work.

I think the direction of development is a good idea. More and more products are going this way. I personally use the container solution on my Mikrotik RB 5009 and honestly it’s really cool.

It is now possible to configure containers using Luci, but unfortunately some GL.iNet devices do not support kernel level container options.

Have you tried running docker on MT2500?

2 Likes

I haven’t tried it, but I saw a thread about it on the forum.
I’ll try it in a few days and see how it works.
Docker is pretty cool for many purposes. But the LXC also has many advantages. What I mean here is that in LXC you have the systemd daemon running and all sorts of cool stuff.
Docker has official and unofficial containers. I’d rather not use the unofficial ones. For safety reasons.
LXC gives me easy access to Ubuntu’s repositories which somewhat secures the supply chain.
In theory you can run Ubuntu in docker but then you have to use some dirty tricks.