Можно ли запустить openwrt внутри LXC контейнера (или докера)?

Ссылка скопирована
1 ответ

Задача:
На устройстве raspberry pi 4b запустить несколько контейнеров. Первый контейнер это openwrt который служит маршрутизатором (wi-fi роутером)
А второй контейнер может быть например для телеграмм бота.
В общем цель сделать так чтобы мой raspberry pi не был заточен исключительно под одну цель а конкретно под раздачу интернета по wifi.

Дополнительно:

А вопрос где? Можно хоть 100 контейнеров разных запускать, ни кто не запрещает.

Ответы:

Первый контейнер это openwrt который служит маршрутизатором (wi-fi роутером)

Не очень хорошая идея. Контейнеры имеют ряд ограничений на создание tun/tup устройств.
Так же всем оборудованием и драйверами нужно рулить в хостовой системе.
Вместо удобства управления только получите лишний гемор.

конкретно под раздачу интернета по wifi.

Для этого не нужен openwrt. Можно настроить как то так в хосте:
https://wiki.archlinux.org/title/Software_access_p...

Я б предложил маршрутизатор все таки использовать нативно, без контейнеров и прокладок.
А уже вторичные функции впихивать в контейнеры внутри опенврт.
https://openwrt.org/lxc_openwrt_host

Опенврт удобен тем что он минималистичен и имеет отличный веб-интерфейс

Можно, но работать оно нормально не будет. Я про опенврт
Разве что виртуалку запускать

Можно и работает нормально, только контейнер нужно делать привилегированным. На proxmox крутится
Не знаю будет ли работать openvpn сервер, пока не пробовал, остальное работает без проблем.
Попробую с OpenVPN, напишу, работает или нет.
UPD
Работает)

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Ольга Сеть Ответ

Да, можно запустить OpenWRT внутри LXC контейнера или Docker контейнера. Оба варианта имеют свои преимущества и недостатки, поэтому выбор зависит от конкретных потребностей и целей.

LXC (Linux Containers) - это технология виртуализации на уровне операционной системы, которая позволяет запускать несколько изолированных контейнеров на одном хосте. LXC обеспечивает высокую производительность и низкую накладную, что делает его идеальным выбором для запуска OpenWRT. Для запуска OpenWRT внутри LXC контейнера вам нужно будет создать новый контейнер, установить OpenWRT внутри него и настроить необходимые параметры сети.

Например, для создания LXC контейнера с OpenWRT вы можете использовать следующие команды:

lxc launch images:alpine/3.14 my-container
lxc exec my-container -- apk add openwrt

lxc launch images:alpine/3.14 my-container lxc exec my-container -- apk add openwrt

Docker, с другой стороны, является платформой для разработки, доставки и запуска приложений в контейнерах. Docker обеспечивает простоту использования и управления контейнерами, но может иметь большую накладную из-за использования виртуализации на уровне ядра. Для запуска OpenWRT внутри Docker контейнера вам потребуется создать Docker образ с OpenWRT и запустить контейнер на основе этого образа.

Например, для создания Docker образа с OpenWRT вы можете использовать следующий Dockerfile:

FROM alpine:3.14
RUN apk add openwrt

FROM alpine:3.14 RUN apk add openwrt

После создания Docker образа вы можете запустить контейнер на его основе с помощью команды:

docker run -d my-openwrt-image

docker run -d my-openwrt-image

Оба способа позволяют запустить OpenWRT внутри контейнера, и выбор между LXC и Docker зависит от ваших конкретных потребностей и предпочтений. Надеюсь, это поможет вам решить вашу проблему с запуском OpenWRT внутри контейнера.

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно