
Если дома есть небольшой сервер, NAS или даже старенький ноутбук для загрузки видео, рано или поздно появится идея иметь собственный grabber с YouTube. Хотелось, чтобы было просто, быстро, без веб-сайтов с рекламой, без танцев с командной строкой или без громоздких GUI.
Так появился Elengrab — легкий веб-граббер для YouTube, который работает быстро, не требует танцев с бубном и идеально подходит для домашнего сервера.
Чтобы быстро развернуть Elengrab, установите Docker и выполните следующую команду:
docker run -d \ --name elengrab \ -v elengrab_db:/app_n/sqlite/data \ -v elengrab_downloads:/app_n/downloads \ -p 8080:8080 \ neosy/elengrab:latest
После этого Elengrab будет доступен по адресу http://localhost:8080
Зачем вообще нужен свой YouTube grabber
Сервисов по скачиванию видео — сотни. Но все они ограничены, либо забиты рекламой и жутко медленные.
Хотелось просто:
на компьютере или на телефоне
- вставил ссылку на YouTube
- нажал кнопку
- забрал видео или аудио файл.
и чтобы все это работало у тебя и без посредников.
Что такое Elengrab?
Это лёгкий веб-интерфейс к yt-dlp.
Под капотом:
- Минималистичный UI
- Быстрый backend и frontend на Go с HTMX.
- Никаких лишних зависимостей
- Запуск в одну команду
- Работает практически везде, где можно запустить приложение на go или в docker контейнере.
Elengrab не пытается быть “комбайном”. Он скачивает видео или аудио с YouTube в выбранном формате.
Основные возможности
- Легкий и быстрый веб интерфейс, с возможностью установки веб приложения на смартфоне.
- Скачать видео ролик в mp4 (AV1, H.264, H.265)
- Скачать только аудио (mp3, m4a, webm)
- Автоматический анализ ссылки
- Поддержка параллельных загрузок (3 по умолчанию)
- Статусы загрузки
- История скачивания
- Очистка повторений
Исходник: https://github.com/neosy/elengrab
Docker контейнер: https://hub.docker.com/r/neosy/elengrab
Как работает
- Вставляете youtube ссылку.
- Выбираете формат и нажимаете Get.
- Elengrab вызывает yt-dlp с нужными параметрами.
- Наблюдаете за статусами.
- Скачиваете файл напрямую через интерфейс.
Рис. 1. Веб-интерфейс
Шаги установки Elengrab через Docker
1. Подготовка
Убедитесь, что у вас установлен Docker. Опционально: хорошо иметь Docker Compose, если планируете использовать compose-конфигурацию.
2. Запуск контейнера (одной командой)
docker run -d \ --name elengrab \ -v elengrab_db:/app_n/sqlite/data \ -v elengrab_downloads:/app_n/downloads \ -p 8080:8080 \ neosy/elengrab:latest
-d— запускает контейнер в фоне (detached).--name elengrab— задаёт имя контейнера (по желанию).-v elengrab_db:/app_n/sqlite/data— монтирует volume для хранения SQLite-базы (метаданные, история загрузок).-v elengrab_downloads:/app_n/downloads— монтирует volume для хранения загруженных видео/аудио — важно, чтобы файлы сохранялись на хосте, а не “внутри контейнера”.-p 8080:8080— пробрасывает порт 8080 контейнера на 8080 хоста, чтобы веб-интерфейс был доступен из браузера.neosy/elengrab:latest— имя Docker-образа (по умолчанию). GitHub
После этого Elengrab будет доступен по адресу http://<your-host-ip>:8080
3. Запуск через Docker Compose
Пример docker-compose.yml:
version: "3.8"
services:
elengrab:
image: neosy/elengrab:latest
container_name: elengrab
restart: unless-stopped
ports:
- "8080:8080"
environment:
TZ: "Europe/Moscow" # ваш часовой пояс
volumes:
- <ваш_путь_к_папке_db>:/app_n/sqlite/data
- <ваш_путь_к_папке_downloads>:/app_n/downloads
Затем:
docker-compose up -d
После этого Elengrab будет доступен по адресу http://localhost:8080
Рис. 2. Elengrab после установки
План развития
- скачивание плейлистов
- темная тема
- периодические операции по обслуживанию и очистке.

