Рецепт

Обновление контейнера ForestVPN на MikroTik

Переведите контейнер ForestVPN на MikroTik на более новый закреплённый образ, не потеряв идентичность и связь с аккаунтом, и откатитесь тем же способом.

Обновлено 8 октября 2026 г.

Как рецепт пока не проверено на реальном оборудовании. Он опирается на цикл удаления и повторного добавления, который выполнялся на роутере и сохранил ту же идентичность устройства.

Что вы получите

Контейнер работает на более новом образе. Это по-прежнему то же устройство в вашем аккаунте, потому что идентичность хранится в монтировании на роутере, а не в контейнере.

Перед началом

  • Устройство: MikroTik с контейнером ForestVPN, установленным командой установки.
  • Прошивка: RouterOS 7.21 или новее.
  • Время: пять минут. Пока контейнер удалён, туннеля нет.
  • Как устроены обновления: установка закрепляет точный тег образа, и RouterOS сам никогда не скачает другой. Новый тег — это ваше осознанное изменение, которое вы делаете по этому рецепту. Нужный тег указан в команде установки на странице Получить приложение, Роутер; здесь он не назван, поэтому не может устареть.
  • Что может пойти не так: удаление не тех объектов. Удаляйте только контейнер. Список монтирования и veth хранят вашу идентичность и сетевой путь.

Шаги

  1. Запишите текущий тег, командную строку и список монтирования. Они понадобятся при откате.

    Показывает текущий контейнер

    /container/print detail where name="fvpn"
  2. Остановите и удалите контейнер. Это удаляет его корневую папку, но не источник монтирования, где лежит ключ.

    Останавливает и удаляет только контейнер

    /container/stop [find name="fvpn"]
    /container/remove [find name="fvpn"]
  3. Добавьте его снова с новым тегом. Замените 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"
  4. Запустите его, когда загрузка образа закончится.

    Запускает контейнер

    /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.

Назад к разделу «Помощь»

Русский
Спросите нас о чём угодно