Цифрофой сад
metalnikovg.ru

N.eko - виртуальный браузер в Docker

Banner.png
Опубликовано
//
3 мин. чтения

n.eko - проект для запуска различных браузеров в Docker контейнере с доступом к нему по протоколу WebRTC. Вы можете запустить его в любом месте, подключиться к нему и использовать.

Сценарии использования

Сценарии практического использования может выглядеть так, например вы арендовали VPS, установили Docker и запустили необходимый вам браузер из готового образа neko. Примеры docker-compose.yaml можно посмотреть на официальном сайте Затем на своем рабочем месте в браузере открываете этот браузер. Благодаря возможностям WebRTC всё работает относительно быстро, поддерживается передача звука и видео. Можно например смотреть YouTube, а так же просто заниматься серфингом.

В дополнение к такому сценарию использования, к вашему виртуальному браузеру могут подключиться зрители и наблюдать что вы делаете. В таком режиме можно например устроить совместный просмотр фильмов, видео, презентаций. Имеется так же отдельный образ с VLC плеером.

Рекомендованне системные требования:

РазрешениеЯдраОЗУРекомендации
1024×576@3022 ГБНе рекомендуется
1280x720@3043 ГБХорошая производительность
1280x720@3064 ГБРекомендованне
1280x720@3084 ГБ+Лучшая производительность

Установка

Работает это максимально просто и быстро. Создаём docker-compose.yaml с нужным браузером:

docker-compose.yaml
version: "3.4"
services:
  neko:
    image: "m1k1o/neko:firefox"
    container_name: "neko"
    restart: "unless-stopped"
    shm_size: "3gb"
    ports:
      - "3000:8080"
      - "52000-52100:52000-52100/udp"
    #cap_add:
      #- SYS_ADMIN #needs for Chromium browsers
    environment:
      NEKO_SCREEN: '1920x1080@30'
      NEKO_PASSWORD: nekouserpas$
      NEKO_PASSWORD_ADMIN: nekoadminpas$
      NEKO_EPR: 52000-52100
      #NEKO_NAT1TO1: <your-IP> # Internal ipx

Небольшое пояснение переменных

  • NEKO_SCREEN - указывают разрешение и фреймрейт в котором будкт работать браузер
  • NEKO_PASSWORD - пароль для зрителей
  • NEKO_PASSWORD_ADMIN - пароль для пользователя admin. То есть заходить админом вам надо будет с учёткой admin / nekoadminpas$.
  • NEKO_NAT1TO1 - внутренний IP адрес. Если это будет VPS с внешним ip адресом, ничего указывать не надо, адрес будет определён автоматически.

Вы так же можете использовать дополнительные параметры конфигурации

Запускаем:

docker compose up -d

После того, как загрузится и запустится образ, можно перейти по ip адресу сервера http://YOUR-IP:3000 и логиниться в neko.

Когда залогинитесь, снизу будет иконка клавиатуры и ползунок. Иконку надо нажать чтобы заработало управление внутри контейнера. Справа вверху будут настройки разрешения экрана и некоторые другие. В общем и целом все, можно пользоваться.

neko

Neko можно запустить по HTTPS или через обратный прокси. В документации есть примеры настроек для этого.

Список готовых образов с браузерами и не только представлен в документации. Можно и обычную систему запустить с xfce или kde или собрать собственный образ. Есть образы под arm, отдельно с поддержкой видеокарт.

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

Подключаться к такому браузеру можно с мобильных клиентов. Интерфейс адаптирован под разрешения экранов смартфонов.

Отдельно есть проект по управлению виртуальными комнатами с запущенными браузерами neko - neko-rooms.

Следующая заметка →Dockge - менеджер стеков Docker