小米路由器 BE7000 Docker、固件实践心得

news2025/11/4 19:00:36

背景

有一台兄弟 2260d打印机,想通过小米路由器实现局域网共享打印机。
小米BE7000路由器有docker功能,尝试折腾docker。

USB接口拓展的可行性

  • 小米BE7000只有一个USB接口,但是想要同时接入硬盘和打印机,至少需要两个接口,楼主尝试了两种方式:
  1. 直接把笔记本的拓展坞转为USB A口,接上路由器。路由器无法识别拓展坞上的任何设备。
  2. 购买绿联的USB 3.0 HUB。成功识别接入路由器的多个硬盘等设备。

结论:可行。

固件

三方固件

  • 没有找到合适的三方固件实践成功案例。仅能找到一些SSH折腾案例。
  • 给大家分享汇总一下吧:
    [1] https://post.smzdm.com/p/awz2l76g/?sort_tab=hot/#comments
    [2] https://www.right.com.cn/forum/thread-8283638-1-1.html
    [3] https://www.gaicas.com/xiaomi-be7000.html
    [4] https://www.right.com.cn/forum/thread-8294334-1-1.html

小米低版本固件

  • 一开始路由器没折腾,固件版本比较高,应该是24年8月最新的。docker中如果尝试挂载 /mnt/usb-xxxx 会提示权限不够。
  • 需要替换为低版本固件 1.0.122
    • 若版本高于 1.0.122,需要使用 小米路由器修复工具 降级。
    • 下载地址: https://cdn.cnbj1.fds.api.mi-img.com/xiaoqiang/rom/rc06/miwifi_rc06_firmware_7821f_1.0.122.bin

Docker

终端的开启

其实默认运行的的 simple-docker 可以认为是整个docker控制的管理者,很多命令直接在这里执行即可。

参考:
[1] https://post.smzdm.com/p/awz2l76g/?sort_tab=hot/#comments
[2] https://post.smzdm.com/p/akk9nvv8/

USB设备驱动问题

  • 小米路由器自带的 simpledocker 系统支持的驱动比较少。
    • 进入终端后使用 lsusb 命令可以看到打印机已经接入。
      • 默认的linux系统不显示打印机名称,但是可以根据windows上运行usbipd list 命令后显示的vid:pid来判断是否识别到。
    • 但是在/dev中并没有 usb相关设备,如:lp, usb等描述
      • 查询了一下相关资料以及GPT,初步怀疑原因是缺少内核模块usblp (是LP不是IP)。
      • 由于缺少 yum、apt、dpkg、deb等包管理工具,折腾内核模块有点过于麻烦,没有继续折腾了。如果有朋友知道如何解决,欢迎留言。
        • 楼主是第一次折腾路由器,对嵌入式设备并不是很了解。根据 https://post.smzdm.com/p/akk9nvv8/ 这个帖子,一些软件的安装貌似是通过 apk 命令来运行的。软件库名称应该是 Alpine。它的仓库源地址估计是 https://dl-cdn.alpinelinux.org/alpine/v3.16/ 这些。

Docker镜像的拉取

这个真的是一把辛酸泪。路由器自带的docker拉取非常不稳定,楼主尝试了几种方式:

  1. 在web管理页面直接输入 docker hub 中的名称拉取 (不带docker pull 命令) ,这种方式在新版本的小米固件中,多次尝试(10次左右),有概率成功。在回退后的 1.0.122 无法成功。
  2. web管理页面有离线导入的选项,楼主通过自己挂代理pull到自己电脑后,通过docker save命令导出到本地,再上传的方式安装。结果同样令人遗憾。不知道什么原因,同样的docker镜像,在线获取成功的一半都正常运行,离线安装的可能会遇到 2 种情况。a). 上传后直接告知异常。 b). 上传后可以运行,但是运行一段时间后自动关闭(大约10秒钟),终端无法连接上。
  3. sinple docker 的终端中,参考 https://post.smzdm.com/p/akk9nvv8/ 替换源,通过修改 /etc/apk/repositories 这个文件后 运行 apk update ,通过 apk add docker-cli 顺利安装上了docker服务。但是 docker pull xxx 依旧失败。报错信息为:

/data # docker pull ydkn/cups
Using default tag: latest
Error response from daemon: Get “https://registry-1.docker.io/v2/”: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

  • 楼主 a).尝试修改/etc/docker/daemon.json 文件替换在其它帖子中看到的24年的源,并且重启容器,依旧无法解决问题。也b). 尝试添加了 /etc/hosts 文件中 registry-1.docker.io 通过dig获取的IP地址。还c). 尝试修改 /etc/resolv.conf 中nameserver为8.8.8.8114.114.114.114。依旧无法解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2129084.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

大模型书籍丨深入浅出的 Transformer 学习,这本大模型应用解决方案太香了

说到Transformer,这个已经是无数人谈论的神经网络的基础架构之一了。但是这期间又有无数的好的,极好的,不好的信息,所以如果你要真的了解它,找本好书来仔细看一下,其实是对得起自己的最好方式! …

企业数据端口和储备设备防泄漏:端口管控软件是什么?

端口管控软件是什么?端口管控:系统基于Windows底层驱动,可智能识别存储设备的类型为海量存储还是非海量存储,不影响USB键盘、鼠标和打印机等接入设备的正常使用; 针对不同的计算机可自定义设置USB端口的读写模式,可设定…

视频编辑SDK解决方案,包含丰富的模板方案

美摄科技作为视频编辑技术的领航者,携其革命性的视频编辑SDK解决方案,正以前所未有的方式,赋能每一位创作者,让图片与视频的碰撞擦出最耀眼的火花,轻松打造个性化、高质量的Vlog作品,满足从日常分享到专业制…

OJ 删除链表的倒数第N个结点

题目: 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点 示例: 代码思路: //方法一:class Solution { public: //使用双指针算法ListNode* removeNthFromEnd(ListNode* head, int n) { i…

通信工程学习:什么是MRF多媒体资源功能、MRFC多媒体资源功能控制、MRFP多媒体资源功能处理

一、MRF多媒体资源功能 MRF(Multimedia Resource Function,多媒体资源功能)是3G/IMS网络中定义的提供多媒体资源功能的网络实体,它为3G/IMS网络的业务和承载提供媒体能力支持。MRF通过提供丰富的媒体处理功能,如播放声…

MySQL之库和表操作

目录 一:对库的操作 1.创建数据库 2.查看数据库列表 3.显示创建数据库的语句 4.删除数据库 5.字符集与校验集 6.确认当前所处的数据库 7.修改数据库 8.备份和恢复 9.查看连接情况 二:对表的操作 1.创建表 2.查看表 3.删除表 4.修改表 接下来的日…

【进展报告】9.9-9.12

一、进度概述 1、推进关于滤波的相关任务(详情见相关文件) 二、详情 1、噪声与滤波模块 在师兄 inversionnet 的基础上,在正则化模块前后添加了对应的噪声和滤波模块。 噪声采用的是最基本的高斯噪声和椒盐噪声,关于其他…

OpengGL学习-显示三维形状

本文介绍了OpenGL创建三维图形的几个示例程序。并附有OpenGL创建三维形状的基础示例代码。本文还介绍了OpenGL基础知识,并对Vulkan做了简介。Vulkan性能更强大,但对开发技术人员要求更高,对兼容性的风险和工作量要有充分的认识。兼容性不仅存…

通信工程学习:什么是MGCF多媒体网关控制功能

MGCF:多媒体网关控制功能 MGCF(Media Gateway Control Function,多媒体网关控制功能)是IP多媒体子系统(IMS)网络中的一个关键组件,主要负责实现IMS网络和传统电路交换网络(如PSTN、I…

2024年【建筑焊工(建筑特殊工种)】考试技巧及建筑焊工(建筑特殊工种)作业考试题库

题库来源:安全生产模拟考试一点通公众号小程序 建筑焊工(建筑特殊工种)考试技巧考前必练!安全生产模拟考试一点通每个月更新建筑焊工(建筑特殊工种)作业考试题库题目及答案!多做几遍,其实通过建筑焊工(建筑特殊工种)在线考试很简…

springboot 项目获取 yaml/yml (或 properties)配置文件信息

文章目录 springboot 项目获取配置文件信息前言1、 Autowired 注入 Environment类2、基础用法,使用Value注解直接注入配置信息3、进阶方法(推荐使用)拓展:springboot 集成配置中心 - 以 Apollo 为例 springboot 项目获取配置文件信…

YOLO配合 PYQT做自定义虚拟电子围-自定义绘制多边形虚拟电子围栏

电子围栏标注以及显示 1、目标检测: YOLO可以识别检测物体,这是众所周知的。使用YOLO来做目标检测,并获取坐标信息。 2、电子围栏 比如在监控中,指定一块区域,如果有目标进入,则发出警报,并提…

写的一致性问题之失效模式

文章目录 1、先删除redis缓存,再写入mysql:1.1、高并发情况下分析出现的问题 1、先删除redis缓存,再写入mysql: 此时删除redis成功,写入mysql成功,此时redis是空,mysql是新数据。此时删除redis…

财富通公司开发洗车小程序有哪些用处?

洗车小程序具有多种用处,主要体现在以下几个方面: 1.便捷预约服务:用户可以通过洗车小程序轻松预约洗车服务,无需亲自前往洗车店或打电话预约,节省了时间和精力。同时,小程序通常提供多种预约时间选项&…

Java进阶13讲__补充1/2

单元测试、反射、注解、Lombok 1. 单元测试 1.1 Junit单元测试框架 1.2 Junit框架入门 package com.itheima.a_单元测试;import org.junit.Test;public class SpringUtilTest {Testpublic void testPrintNumber() {StringUtil.printNumber("Jack");StringUtil.pri…

go 笔记

数据结构与 方法(增删改查) 安装goland,注意版本是2024.1.1,不是2024.2.1,软件下载地址也在链接中提供了 ‘go’ 不是内部或外部命令,也不是可运行的程序 或批处理文件。 在 Windows 搜索栏中输入“环境变量”&#…

Windows上安装RabbitMQ

rabbitmq是干嘛的我就不介绍了,直接开始安装教程。 搭建成功演示图 下载安装包 https://pan.baidu.com/s/1ZlCFxh9Q00ynSU3ZCpTC9Q?pwdry51​pan.baidu.com/s/1ZlCFxh9Q00ynSU3ZCpTC9Q?pwdry51 下载完后有两个包(erlang和rabbitmq) 先安装otp_win64_24.1.7.exe…

【Python系列】理解 Python 中的时间和日期处理

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

测试开发基础——测试分类

四、测试分类 1. 按照测试目标分类 1.1. 界面测试 肉眼看到的任何元素都需要进行测试 界面测试(简称U测试),指按照界面的需求(一般是U设计稿)和界面的设计规则,对我们软件界面所展示的全部内容进行测试…

【计算机网络】UDP 协议详解及其网络编程应用

文章目录 一、引言二、UDP1、UDP的协议格式2、UDP 报文的解包和分用3、UDP面向数据报的特点 三、UDP输入输出四、UDP网络编程 一、引言 UDP(User Datagram Protocol,用户数据报协议)是一种网络通信协议,它属于传输层的协议。是一…