Руководство по Docker для маршрутизатора Xiaomi
Руководство по Docker для маршрутизатора Xiaomi

Эта статья является переписыванием старой статьи

Подготовка #

Необходимые инструменты (файлы, оборудование) следующие:

  • ПЗУ маршрутизатора (разрабатываемая версия + стабильная версия)
  • Инструмент для спасения кирпичей
  • существовать 1GB=1024MB После конвертации оставшееся пространство ≥ 32GB из U-диск (или мобильный жесткий диск)1

Вышеуказанные инструменты (файлы, оборудование), кроме жесткого диска, можно скачать с официального сайта роутера Xiaomi.

Используемая версия статьи:

  • Прошивка версии разработки AX9000 (Вер. 1.0.140)
  • Стабильная версия прошивки AX9000 (Вер. 1.0.168)
  • MIWIFIRepairTool(Dat. 19/01/24)

текст #

Введите фон роутера и перейдите в общие настройки. -> Создайте новую резервную копию в состоянии системы.

Затем используйте функцию ручной загрузки, чтобы обновить прошивку разрабатываемой версии.

ждать 5~8 минут, когда маршрутизатор System Индикатор горитдлямигает синий светили Когда оранжевый свет всегда включен Волямаршрутизатор Выключите и перезапустите(Power Просто нажмите кнопку)

В это время получите доступ к серверной части маршрутизатора и введите дополнительные настройки. -> DOCKER, вы можете увидеть следующую страницу

Это означает, что ваша установка прошла успешно.

Далее форматируем устройство

Используйте свой любимый инструмент для форматирования диска, чтобы отформатировать устройство хранения данных как EXT4(Linux)Просто отлично2

Затем вставьте запоминающее устройство в сетевой интерфейс Mesh маршрутизатора и перезагрузите устройство.

После завершения перезагрузки вы сможете просмотреть информацию об устройстве в состоянии хранилища на странице управления маршрутизатором.

Сначала создаем виртуальную память3,тогда иди впередовойнастраивать -> DOCKER верно Docker Для установки ждем После завершения установки Нажмите Установить стороннее управление (может не получиться из-за особенностей китайской сети)

После завершения установки нажмите Управление Докером

And then, enjoy it!

Расширить игровой процесс #

Включите маршрутизатор SSH Разрешения #

Здесь есть два метода (первый можно исправить

Первый тип:

Войдите в серверную часть маршрутизатора и запишите адрес, аналогичный этому.

Язык кода:javascript
копировать
http://[IP]/cgi-bin/luci/;stok=<STOK>/web/home#router

Затем мы получаем STOK и IP-адрес, указанный ниже, для замены.

Язык кода:javascript
копировать
http://[IP]/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20nvram%20set%20ssh_en%3D1%3B%20nvram%20commit%3B%20sed%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%5C%22debug%5C%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%3B%20%2Fetc%2Finit.d%2Fdropbear%20start%3B

Показ после посещения {"code": 0} Это успешно, затем смените пароль

Язык кода:javascript
копировать
http://[IP]/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20echo%20-e%20'admin%5Cnadmin'%20%7C%20passwd%20root%3B

Второй тип:

Войдите на страницу управления контейнером, создайте контейнер и Image Заполнять busybox

Затем перейдите к расширенным настройкам контейнера и установите Console Изменить на Interactive & TTY (-i -t)

тогда иди в Volumes часть, новая mapping Воля container заполнять /mnt и Волямодель Изменить на Bind ,Воля host заполнятьдля / И Воля Разрешения Изменить на Writable

После развертывания выберите его в быстром действии списка контейнеров. Attach Console

Затем выполните следующую команду:

Язык кода:javascript
копировать
chroot /mnt
vi /etc/init.d/dropbear

Внесите изменения согласно следующему (Diff):

Язык кода:javascript
копировать
...

start_service()
{
        + #flg_ssh=`nvram get ssh_en`
        + #channel=`/sbin/uci get /usr/share/xiaoqiang/xiaoqiang_version.version.CHANNEL`
        + #if [ "$flg_ssh" != "1" -o "$channel" = "release" ]; then
        + #       return 0
        + #fi
...
}

Многоточия представляют один и тот же контент. Необходимо изменить только содержимое выше (ниже) эллипсов.

Затем запустите службу

Язык кода:javascript
копировать
/etc/init.d/dropbear start

Исправлять root пароль

Язык кода:javascript
копировать
passwd root

Лечение может относиться к 《 Маршрутизатор Сяоми AX9000 Получите прошивку девелоперской версии напрямую SSH》из Часть отвержденияили《 [ax9000] Xiaomi ax3600/ax6000/ax9000/ax5/ax6 получить root》из Часть отверждения

строить Memos #

существовать Memos Получить официальные документы compose документ

следующее:

Язык кода:javascript
копировать
version: "3.0"
services:
  memos:
    image: neosmemo/memos:latest
    container_name: memos
    volumes:
      - ~/.memos/:/var/opt/memos
    ports:
      - 5230:5230

вернодокументруководить Исправлять

Язык кода:javascript
копировать
version: "3.0"
services:
  memos:
    image: neosmemo/memos:latest
    container_name: memos
    volumes:
      - /mnt/docker_disk/docker_data/memos:/var/opt/memos
    ports:
      - 5230:5230

Затем Волядокумент Вставьте контент вконтейнеруправлятьиз Stacks Частичного развертывания достаточно

Конечно, вы также можете развернуть вручную.

При создании контейнера Image Изменить на neosmemo/memos

Раздел расширенных настроек Volumes добавить в mapping /mnt/docker_disk/docker_data/memos модель Изменить на Bing Затем host Изменить на /var/opt/memos И Воля Разрешения Изменить на Writable

Перейти к Network Создать новый port mapping Оба пункта установлены на 5230,Выбор сети host Это нормально, ты можешь передать это таким образом Адрес фонового управления маршрутизатором: 5230 доступ Memos Понятно

Создайте небольшой сервер #

Перейти к App Templates, выбирать Ubuntu и развернуть

тогда иди страница вконтейнерурегулировать,Attach или Console Войдите в контейнер

Введите следующую команду:

Язык кода:javascript
копировать
apt-get update
apt-get install ca-certificates

Затем Установите некоторые инструменты

Язык кода:javascript
копировать
apt-get install vim
apt-get install systemctl

Изменить источник (необязательно):

Язык кода:javascript
копировать
vim /etc/apt/sources.list

gg Затем dG Весь контент из Затем

Вставить источник зеркала Цинхуа

Язык кода:javascript
копировать
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-security main restricted universe multiverse

# Предварительная версия программного обеспечения, не рекомендуется включать
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ jammy-proposed main restricted universe multiverse

Обновить и удалить минимизацию:

Язык кода:javascript
копировать
apt-get update
unminimize

Конфигурация SSH:

Язык кода:javascript
копировать
apt-get update
apt-get install openssh-server

настраивать root пароль:

Язык кода:javascript
копировать
passwd

Исправлять Конфигурациядокумент:

Язык кода:javascript
копировать
vim /etc/ssh/sshd_config

существоватьдокументнайден в PermitRootLogin prohibit-password и закомментируйте

Затемдобавить в PermitRootLogin yes

Перезапустите службу

Язык кода:javascript
копировать
/etc/init.d/ssh restart

Затем создается Маленький сервер Понятно

  1. Конечно, вы также можете использовать жесткие диски потребительского уровня, но это немного излишество, если только кто-то не хочет использовать маршрутизатор для простого решения. NAS ↩︎
  2. Если на вашем запоминающем устройстве также необходимо хранить документы, вы можете разделить его на два раздела, вам просто нужно убедиться, что первый раздел Формат EXT4 (Linux) ↩︎
  3. Если вам не хватает емкости накопителя ≤ 32 ГБ, невозможно установить после создания документа с нумерацией страниц. DOCKER ↩︎
boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода