Skip to content
InstagramYouTubeFacebook

Tutorial

Vsebniki RouterOS: Docker na MikroTik

Poženite vsebnike v slogu Dockerja na MikroTik RouterOS v7: vklopite način vsebnikov, nastavite omrežje veth in shrambo, nato upravljajte v velikem obsegu.

Povzetek MikroTik RouterOS v7 lahko poganja z Dockerjem združljive vsebnike neposredno na usmerjevalniku, tako da filtriranje DNS, agenti za nadzor in majhne omrežne storitve živijo ob usmerjevalni ravnini namesto na ločeni škatli. Ta vodnik pokriva zahteve za strojno opremo in arhitekturo, varen vklop device-mode za vsebnike, gradnjo omrežja veth in bridge z NAT, namestitev vašega prvega vsebnika in upravljanje vsebnikov po celotni floti. RouterOS 7.23 (maj 2026) je razširil katalog pripravljenih vsebniških aplikacij, s čimer je to postalo praktična možnost tako za ponudnike interneta kot za graditelje laboratorijev.

Arhitekturni diagram vsebnikov MikroTik RouterOS, ki prikazuje usmerjevalnik, ki gosti zložene storitvene vsebnike v slogu Dockerja

Kaj So Vsebniki na MikroTik RouterOS?

Vsebniki na MikroTik RouterOS so MikroTikova izvedba linuxovih vsebnikov, ki napravi RouterOS v7 omogoča, da neposredno na usmerjevalniku poganja izolirane, z Dockerjem združljive slike aplikacij. Delujejo s slikami iz Docker Hub, GCR, Quay in drugih registrov, in čeprav RouterOS namesto ukaza docker uporablja lastno sintakso CLI, je osnovno vedenje enako — povlečete sliko, ji daste omrežje, priklopite shrambo in jo zaženete. (Dokumentacija MikroTik)

Za ponudnika interneta ali laboratorij to pomeni, da je majhne, omrežju bližnje storitve mogoče postaviti skupaj z usmerjevalno ravnino: DNS filter Pi-hole ali AdGuard, agent za nadzor, povratni proxy ali IoT most. Stabilna izdaja RouterOS 7.23 z dne 25. maja 2026 je dodala dolg seznam pripravljenih aplikacij — vključno s paperless-ngx, nextcloud, lorawan-stack, birdnet-go in vmesniki za upravljanje Dockerja, kot sta portainer in dockge — poleg novega stikala network-outgoing-access, ki vsebniku prepreči, da bi sprožil odhodni promet. (Dnevnik sprememb RouterOS 7.23)

Zahteve in Strojna Oprema

Paket container je združljiv z arhitekturami arm, arm64 in x86 ter mora biti nameščen pred vsem drugim. Vlečenje oddaljene slike potrebuje veliko prostega prostora, zato MikroTik priporoča zunanjo shrambo namesto notranjega bliskovnega pomnilnika naprave. (Dokumentacija MikroTik)

Predvidite zunanji medij prek USB, SATA ali NVMe, formatiran z datotečnim sistemom, ki ga RouterOS podpira. MikroTik predlaga disk, zmožen vsaj 100 MB/s zaporedne prepustnosti in 10K naključnih IOPS — počasnejši diski naredijo razpakiranje slike mučno dolgo. Izogibajte se nameščanju vsebniških nosilcev na vgrajeno shrambo, ki je majhna in se obrablja pod vzorci pisanja vsebnikov. Naprave z zelo omejenim bliskovnim pomnilnikom naj namesto vlečenja na daljavo uporabljajo vnaprej pripravljene slike na priklopljenem disku.

Varno Vklopite Device-Mode za Vsebnike

Vsebniki so privzeto izklopljeni in z dobrim razlogom za vklop zahtevajo fizični dostop. Funkcijo vklopite z:

/system/device-mode/update container=yes

RouterOS nato počaka, da potrdite s pritiskom tipke reset ali hladnim ponovnim zagonom. Ta vrata fizične potrditve so namerni varnostni nadzor: ko je način vsebnikov vklopljen, je vsebnike mogoče dodajati, zaganjati in odstranjevati na daljavo, zlonamerna slika pa lahko postane opora na usmerjevalniku. MikroTik je glede tega neposreden — če je vaša naprava RouterOS ogrožena, vsebniki naredijo namestitev zlonamerne programske opreme trivialno, za slike tretjih oseb pa ni nobenega varnostnega jamstva.

Z usmerjevalnikom, ki gosti vsebnike, ravnajte natanko tako varno kot z najmanj zaupanja vredno sliko, ki jo na njem poganjate. Nameščajte le slike, ki jim zaupate, napravo držite za požarnim zidom in pred vklopom tega v produkciji preberite naš vodnik za varnostno upravljanje device-mode.

Zgradite Vsebniško Omrežje

Vsebniki potrebujejo navidezni vmesnik, bridge in NAT, da dosežejo internet. Vzorec spodaj odraža omrežje vrste „bridge” v Dockerju. Najprej ustvarite vmesnik veth in bridge, ki si deli njegov naslov prehoda:

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

En sam veth lahko streže mnogim vsebnikom, ustvarjanje dodatnih parov veth/bridge pa vam omogoča, da skupine vsebnikov izolirate med seboj. Če ste novi v bridžanju RouterOS, naš vodnik za konfiguracijo bridge razlaga osnovni model. Nato dodajte pravilo masquerade, da se odhodni vsebniški promet prevede — celotno sliko najdete v vodniku za konfiguracijo NAT:

/ip/firewall/nat/add chain=srcnat action=masquerade src-address=172.17.0.0/24

Namestite Svoj Prvi Vsebnik

Usmerite registry in začasni imenik za razpakiranje na vaš zunanji disk, nato dodajte sliko. Spodnji primer Pi-hole je kanonični iz dokumentacije MikroTik:

/container/config/set registry-url=https://registry-1.docker.io tmpdir=disk1/tmp
/container/add remote-image=pihole/pihole interface=veth1 root-dir=disk1/images/pihole name=pihole logging=yes

Dodajanje vsebnika sproži prenos in razpakiranje, vendar ga ne zažene. Napredek preverite z /container/print in počakajte, dokler ni status=stopped, nato ga zaženite:

/container/start pihole

Na koncu storitev objavite tako, da vrata z usmerjevalnika posredujete na naslov veth:

/ip firewall nat add action=dst-nat chain=dstnat dst-address=192.168.88.1 dst-port=80 protocol=tcp to-addresses=172.17.0.2 to-ports=80

Pi-hole zdaj odgovarja na LAN IP usmerjevalnika. Tako poganjanje filtriranja DNS je alternativa nativnim seznamom blokiranja RouterOS — če imate raje pot brez vsebnika, si oglejte naš vodnik za RouterOS adlist.

Upravljajte Vsebnike po Celotni Floti

En sam vsebnik na enem usmerjevalniku je preprost. Pravo operativno vprašanje za ponudnika interneta je doslednost: ista slika, ista shema veth in NAT, ista razporeditev shrambe ter iste omejitve start-on-boot in pomnilnika na vsaki napravi. RouterOS vam daje osnovne gradnike — start-on-boot=yes preživi ponovne zagone, memory-high ali memory-max pa omejita RAM na vsebnik, tako da podivjana storitev ne more izstradati usmerjevalne ravnine:

/container/config/set memory-high=200M
/container/set pihole start-on-boot=yes

Težji del je to narediti enako na desetinah ali stotinah oddaljenih usmerjevalnikov in nato dokazati, da se je vsak po ponovnem zagonu dejansko vrnil — še posebej, ko naprava sedi za CGNAT in ne morete preprosto doseči njenega javnega IP.

Nasveti

  • Vsak vsebniški nosilec hranite na zunanjem disku; nikoli na notranjem NAND.
  • Uporabite ločen par veth/bridge za izolacijo nezaupanja vrednih vsebnikov od zaupanja vrednih.
  • Nastavite memory-max na vse, čemur ne zaupate povsem, da usmerjevalnik ostane odziven.
  • Za čisto testno okolje pred poseganjem v produkcijo poženite iste slike na virtualizirani instanci CHR, preden jih namestite na fizične usmerjevalnike.

Naredite Naslednji Korak

Vsebniki spremenijo usmerjevalnik MikroTik v drobnega gostitelja aplikacij, vendar flota takih gostiteljev potrebuje orkestracijo. MKController centralno pripravlja predloge konfiguracije RouterOS, jih uporablja na vsaki napravi v vašem inventarju in sledi odstopanjem, tako da vidite, kateri usmerjevalnik je odstopil — prek NATCloud pa doseže naprave za CGNAT, da potrdi, da se je vsebnik po vzdrževanju znova zagnal. To zapolni vrzel med ročno konfiguracijo enega vsebnika in njihovim zanesljivim upravljanjem po celotnem omrežju ponudnika interneta.

Začnite svojo brezplačno preizkusno različico MKController