今年 9 月小红书上有个帖子叫《吃上 mikrotik 了,顺便网络结构分享》,作者把原来 PVE 里跑的"爱快主路由 + iStoreOS 旁路由"方案换掉了,上了一台 RB5009 做主路由,顺手把 ZeroTier 从虚拟机迁进了 RouterOS,旁路由保留但换成 ImmortalWRT。 这篇不到四十赞的帖子下面吵出了这三年家庭组网圈最核心的路线之争:“主路由尽量用硬路由,配置越简单越好”“网关和服务器分开”,对面是"同 5009,跑着 docker 啥的也从来没出过问题"“ROS 分流毫无争议的很强啊”。还有人直接问"原系统可以装 openclash 吗",回答就五个字:可以用 docker 安装。小红书小红书

往 RouterOS 里塞容器这件事,圈子里传了不是一天两天。但翻完从 2022 年到 2026 年五个教程条目和它们的评论区,你会发现一个反直觉的事实:真正把人劝退的从来不是"装容器"这个动作,而是装之前和装之后的四道关卡。
先说这波需求到底有多长盛。2022 年 6 月就有 UP 出了 RouterOS 7.4beta4 的 Container 配置案例;2023 年"软路由 routeros 容器功能"系列单集 4000 播放、31 条评论;2024 年 9 月那期《RouterOS 利用 Docker 容器安装 MosDNS 实现 DNS 分流》跑到 7246 播放,攒了 200 条评论,是这些教程里互动最高的;2024 年 8 月另一期 docker 容器解说版 3316 播放,点赞 32、收藏 91——收藏是点赞的近三倍;2026 年 5 月的《ROS 路由 container 里安装 mihomo》,1511 播放、13 赞、27 收藏、0 评论。这组数字拼出来的用户画像很清楚:需求持续存在、教程被"先收藏再说"的人大量囤着,但收藏之后真正动手又反馈的很少。囤教程而不行动,本身就说明中间有一道没人讲明白的坎。
第一道关:镜像根本拉不下来。容器功能②那条视频评论区留着一句原话。 底下回答一针见血:"你需要一个墙内的仓库,adg、pihole 这类镜像装了好几次都失败的大有人在。"更早的 MosDNS 评论区里,“求配置文件"刷了满屏,还有人就一句话求助。 也就是说,在 ROS 里跑容器的第一步不是开 /container,而是先解决"镜像从哪来”:要么你有可靠的换源/代理直接拉取路径,要么你有一台能联网的机器把镜像导出成 tar,上传到 RouterOS 的 Files 再导入。没有第二条路的人,教程收藏得再多也迈不出第一步。哔哩哔哩哔哩哔哩
第二道关:镜像能拉到,不代表能跑起来。有玩家报告同样的容器功能下,centos 和多个版本的 alpine 全都起不来,nginx 却能正常 running。 教程里"跑通了"的那张图,用的是最普通的镜像,这不等于你的业务镜像也能过。同一台设备、同一个版本,不同镜像的存活率完全不一样,评论区里没人能给出"什么镜像必过"的清单,全靠试。试错的成本是内存和时间:RB5009 官方规格只有 1GB 内存,跑一个 MosDNS 有"稳定 77 天、跑着 docker 从来没出过问题"的现身说法。 但你想叠 mihomo、AdGuard、ZeroTier 好几个一起跑,最好先想清楚失败的时候屏幕前是你自己。哔哩哔哩小红书

第三道关:容器起来了,网还没通。MosDNS 视频底下有人搭建成功之后,发现解析出来的油管视频速度都在 1000 左右。 容器②评论区里有人贴出了 clash 起不来的启动日志。 容器里进程想绑的地址根本不是它能用的地址;"装完 clash 但只有自己走代理才行,想用 clash 的网关要怎么办啊"更是被反复追问的典型。在 RouterOS 里,容器只是一个进程,它后面接的是整套 bridge、veth、mangle、路由表的模型。教程演示"容器 running"给你看的那 3 分钟,和"你全家上网都经过它"之间,隔着你对 ROS 二层三层模型的理解。这一段恰恰是 UP 主们讲得最薄、评论区追问最密的地方。哔哩哔哩哔哩哔哩
第四道关:配置从哪来、能不能活过重启。MosDNS 那条视频首屏 20 条评论里 15 条在"求配置文件"——对绝大多数人来说,装好容器只是开始,DNS 分流规则、代理节点配置、客户端指向,这些文件才是真正的工作量。更隐蔽的是持久化:评论区几年前就有人问"倉庫的備份方法,目前沒人說",镜像和配置存在哪块盘、固件升级和重启之后还在不在、备份要不要单独做,官方教程基本不讲,全靠用户自己踩出来的追问攒成线索。
这四道关走完,还有一个前置问题其实更值得先回答:这个服务到底该不该塞进 ROS。社区里反对的一方观点相当成体系:“主路由配置越简单越好"加上"网关和服务器分开”。 最有说服力的是一位在 ROS 和 iKuai 都试过容器的用户:同样的 alpine 镜像在 ROS 上起不来,转头用爱快跑 alpine 装 ss5 客户端就成功了——不是 ROS 不行,是你图省事塞进去的那个镜像,偏偏挑固件脾气。 拿这三条标准去判断:第一,这个服务挂了是不是全家断网级别的依赖?是的话别上主路由容器,主路由挂了旁路由还能救,容器挂了很多时候连报错都看不到。第二,配置是不是需要经常改?容器在 ROS 里没有 NAS 上那种随手编辑的入口,高频改规则的服务放容器是给自己上刑。第三,你有没有稳定的镜像获取渠道?第一关都过不去的人,后面三关都是空谈。反过来,像 ZeroTier 这种迁进去之后"在外面强依赖"的东西终于不用再拐一层虚拟机的情况,确实是做减法;而"网络交给 MikroTik,服务交给 PVE,备份兜底"这种分工,则是另一派给出的完整答案。小红书哔哩哔哩小红书

还有一点要放进观察清单:RouterOS 的原生功能一直在蚕食容器的理由。今年 10 月已经有人拿原生反向代理写"一个公网 IP 挂五个 HTTPS 站",撤 NAS 上的 nginx 不再需要容器。 但 mosdns、mihomo 这类 DNS 与代理工具目前没有原生替代,塞不塞仍然是选择题。同时版本渠道的争论没停过——7.24 更新视频的评论区里,退回 long term 的呼声被顶在前面。 你准备往里面跑常驻服务的那台 ROS,自己先站在哪个版本渠道上,比容器跑什么镜像更值得你先查。知乎哔哩哔哩

说到底,容器功能让 MikroTik 看起来"什么都能自己干",但这三年评论区攒下来的教训是反过来的:装容器只是十分钟的事,镜像来源、存活率验证、veth 和路由打通、配置文件和持久化,四样里缺一样,教程截图就只配留在收藏夹。想清楚了再动手的人,省下的是一晚上对着 cannot assign 日志发呆的时间。