Обновление контейнера ForestVPN на MikroTik
Переведите контейнер ForestVPN на MikroTik на более новый закреплённый образ, не потеряв идентичность и связь с аккаунтом, и откатитесь тем же способом.
Обновлено 8 октября 2026 г.
Как рецепт пока не проверено на реальном оборудовании. Он опирается на цикл удаления и повторного добавления, который выполнялся на роутере и сохранил ту же идентичность устройства.
Что вы получите
Контейнер работает на более новом образе. Это по-прежнему то же устройство в вашем аккаунте, потому что идентичность хранится в монтировании на роутере, а не в контейнере.
Перед началом
- Устройство: MikroTik с контейнером ForestVPN, установленным командой установки.
- Прошивка: RouterOS 7.21 или новее.
- Время: пять минут. Пока контейнер удалён, туннеля нет.
- Как устроены обновления: установка закрепляет точный тег образа, и RouterOS сам никогда не скачает другой. Новый тег — это ваше осознанное изменение, которое вы делаете по этому рецепту. Нужный тег указан в команде установки на странице Получить приложение, Роутер; здесь он не назван, поэтому не может устареть.
- Что может пойти не так: удаление не тех объектов. Удаляйте только контейнер. Список монтирования и veth хранят вашу идентичность и сетевой путь.
Шаги
-
Запишите текущий тег, командную строку и список монтирования. Они понадобятся при откате.
Показывает текущий контейнер
/container/print detail where name="fvpn" -
Остановите и удалите контейнер. Это удаляет его корневую папку, но не источник монтирования, где лежит ключ.
Останавливает и удаляет только контейнер
/container/stop [find name="fvpn"] /container/remove [find name="fvpn"] -
Добавьте его снова с новым тегом. Замените
NEW-TAGтегом из команды установки. На плате с папкой flash возьмите командную строку и список монтирования из шага 1 и оставьте их без изменений.Добавляет контейнер с новым образом
/container/add remote-image=suquant/fvpn:NEW-TAG \ interface=veth-fvpn root-dir=/fvpn mountlists=fvpn-state \ entrypoint=/mikrotik.sh \ cmd="--agent --nat-lan --iface fvpn0 --config /etc/forestvpn/fvpn0.conf --policy-route --fwmark 51820 --table 100 --http-port 80 --report /etc/forestvpn/result.txt" \ privileged=yes logging=yes start-on-boot=yes dns=172.31.254.1 \ name=fvpn comment="ForestVPN" -
Запустите его, когда загрузка образа закончится.
Запускает контейнер
/container/start [find name="fvpn"]
Проверка, что всё сработало
Показывает работающий тег и журнал
/container/print detail where name="fvpn"
/log print where message~"ForestVPN"Тег новый, контейнер работает, а в журнале нет нового кода привязки. Страница состояния http://172.31.254.2/ открывается с устройства в вашей локальной сети.
Отмена
Откатитесь, повторив шаги 2–4 с тегом, который вы записали на шаге 1.
Если что-то не так
| Симптом | Причина | Что делать |
|---|---|---|
| Появляется новый код привязки | Список монтирования отсутствовал или указывал в другое место, и ключ не нашёлся | Не привязывайте это устройство. Удалите контейнер, восстановите список монтирования по шагу 1 и добавьте его снова. |
| Загрузка образа не удаётся | Роутер не достаёт до Docker Hub | Проверьте интернет и DNS на роутере, затем начните снова с шага 3. |
При добавлении bad parameter | Старая версия RouterOS или изменившееся имя параметра | Проверьте, что прошивка 7.21 или новее. |
Ограничения
- На роутере нет автоматического обновления. Образ не меняется, пока вы его не смените.
- Туннеля нет, пока контейнер удалён.
- Рецепт предполагает адреса из команды установки. Если вы их меняли, используйте значения из шага 1.