← Back to Blog
routeros7 container

How to Enable and Use the RouterOS Container Feature

RouterOS 7 can run actual Linux containers directly on supported hardware — useful for small utilities like a DNS ad-blocker, a metrics exporter, or a lightweight script runner, without a separate box next to the router. It's a real feature, but it's disabled by default and has a few setup steps that aren't obvious the first time.

1

Confirm your device supports it

Container needs ARM, ARM64, or x86 architecture with enough flash and RAM — most entry-level MIPSBE routers can't run it. Check /system resource print for the architecture-name field before going further.

2

Enable the container package and a veth interface

/system device-mode update container=yes

This usually requires physical access (pressing the reset button once when prompted) as a safety measure, then a reboot.

/interface veth add name=veth1 address=172.17.0.2/24 gateway=172.17.0.1
/interface bridge add name=docker0
/ip address add address=172.17.0.1/24 interface=docker0
/interface bridge port add bridge=docker0 interface=veth1
3

Point RouterOS at where to store container files

Containers need a dedicated partition or USB storage:

/container config set registry-url=https://registry-1.docker.io tmpdir=usb1/pull
4

Pull and add a container image

/container add remote-image=alpine:latest interface=veth1 root-dir=usb1/containers/alpine1 start-on-boot=yes
5

Start it and check that it's running

/container start [find tag=alpine:latest]
/container print

Status should show running; use /container shell to get an interactive session inside it if you need to debug.

Why do it this way

Running a container directly on the router instead of a separate device removes a physical box, a power supply, and a network hop from your setup — but it also competes for the same CPU and RAM the router needs for routing itself, so it's a good fit for lightweight utilities and a bad fit for anything CPU-heavy. Keeping storage on a dedicated partition or USB drive (step 3) matters specifically because container images can be large enough to fill onboard flash and leave no room for RouterOS itself to write logs or backups.

How MoniTik helps

If you're running a container to monitor the router itself — a metrics exporter, a custom health-check script — that's exactly the kind of visibility MoniTik already gives you out of the box, without spending the router's own CPU and RAM running the monitoring tool alongside the thing it's monitoring.

Start Free Trial
Valentina Moreno
Valentina Moreno Network Engineer

Valentina has spent the last decade deploying and troubleshooting MikroTik networks for ISPs across Latin America.