Запускайте Mister Download Manager на домашнем сервере или NAS (Docker, Unraid, любая машина Linux) без окна и отправляйте ему загрузки со своего телефона или браузера: сервер загружает их в свои папки, например, в сетевую папку.
Это тот же MDM, что и на рабочем столе: его список, категории, очереди, Планировщик, ограничения скорости и торренты. Вы управляете им с страницы удаленного управления (с любого телефона или компьютера в вашей сети), расширения браузера, настроенного на него, или его командной строки.
Новое: серверный режим появился в этой версии. Пожалуйста, сообщите нам, как он работает.
С Docker
Создайте образ из исходного кода MDM (опубликованный образ появится позже):
git clone https://github.com/anefzaoui/misterdownloadmanager
cd misterdownloadmanager
docker build -t misterdownloadmanager .
Первая сборка занимает много времени (до часа на небольшом сервере: вся программа оптимизирована как единое целое). Образ небольшой, около 175 МБ: минимальная база Debian, две программы MDM и сертификаты, по которым проверяются загрузки. Ему не нужны настольные библиотеки: MDM загружает их только для открытия окна, чего сервер никогда не делает.
Затем запустите его, указав папку для настроек и папку для загрузок. Создайте обе папки заранее, от имени пользователя, под которым будет работать MDM: папка, созданная Docker, принадлежит root, и MDM не сможет её использовать.
mkdir -p /srv/mdm-config /srv/downloads
docker run -d --name mdm --restart unless-stopped \
-p 8463:8463 \
-v /srv/mdm-config:/config \
-v /srv/downloads:/downloads \
--user "$(id -u):$(id -g)" \
misterdownloadmanager
/configсохраняет список, настройки, сертификат и сопряженные устройства./downloadsздесь сохраняются файлы: внутри каждой категории есть своя папка (Music,Video,Torrents…). Смонтируйте сетевую папку здесь, чтобы загружать файлы прямо в нее.--user: пользователь, которому принадлежат эти папки (MDM запускается без определенного пользователя).
docker/compose.yml делает то же самое с Docker Compose.
Сопряжение телефона
docker logs mdmпоказывает адрес для открытия и, пока ни одно устройство не сопряжено, код сопряжения с QR-кодом:
The remote control listens at: https://172.17.0.2:8463/
Its certificate's SHA-256 fingerprint: DE:26:7F:…
No device is paired yet. Open the address (or scan this) and enter the code 1037 1606 …
Внутри контейнера адрес, который находит MDM, является собственным адресом контейнера: укажите ему тот, который вы открываете, адрес сервера с опубликованным вами портом, как -e MDM_REMOTE_URL=https://192.168.1.10:8463/, и журнал и QR-код покажут именно его. Затем выполните сопряжение, как описано в разделе Управление MDM с телефона. Для получения другого кода в любое время:
docker exec mdm misterdownloadmanager-cli pair
Чтобы открыть страницу по имени сервера (https://nas.local:8463/), укажите MDM это имя: -e MDM_REMOTE_HOSTS=nas.local (несколько: разделенные запятыми). Другие имена отклоняются, чтобы ни одна веб-страница не могла получить доступ к MDM через свое собственное имя.
На Unraid
docker/unraid.xml — это шаблон: скопируйте его в /boot/config/plugins/dockerMan/templates-user/ на флеш-накопитель, затем выберите Docker → Add Container и misterdownloadmanager. Он сопоставляет /config с appdata, /downloads с общим ресурсом, порт 8463 и запускается от имени nobody:users (99:100), как того требуют общие ресурсы Unraid. Образ должен быть сначала собран (см. выше) на сервере или отправлен в используемый вами реестр. Если в журнале контейнера указано, что папка принадлежит другому пользователю, один раз передайте её nobody:users: chown -R 99:100 /mnt/user/appdata/misterdownloadmanager.
Без Docker
На любой машине Linux с установленным MDM (.deb, .rpm, AppImage или tar.gz):
misterdownloadmanager --headless --data ~/mdm-server --downloads /srv/downloads
| Флаг | Или переменная | Что устанавливает |
|---|---|---|
--data <folder> |
MDM_DATA_DIR |
список, настройки, сертификат и сопряженные устройства |
--downloads <folder> |
MDM_DOWNLOADS |
куда сохраняются загрузки (внутри папки каждой категории) |
--port <number> |
MDM_REMOTE_PORT |
порт удаленного управления (8463) |
--listen <address> |
MDM_REMOTE_LISTEN |
где он прослушивает: каждый адрес локальной сети, если не указано |
--hosts <names> |
MDM_REMOTE_HOSTS |
имена, помимо его адресов, по которым может быть открыта страница |
MDM_REMOTE_URL |
адрес страницы, как вы ее открываете, отображается с кодом сопряжения |
Удаленное управление включено в этом режиме (MDM_REMOTE=off отключает его). Оно чисто останавливается, сохраняя свой список, когда система останавливает его (docker stop, systemd, Ctrl+C). Оно работает на Windows и macOS так же.
Командная строка взаимодействует с ним так же, как с настольным MDM, с той же папкой данных: MDM_DATA_DIR=~/mdm-server misterdownloadmanager-cli status (один раз api on), pair и добавлением адреса: misterdownloadmanager /d https://example.com/file.zip.
Отправка загрузок из браузера
В меню расширения браузера выберите Отправлять загрузки в → Другой Mister Download Manager (сервер): введите адрес сервера, откройте его один раз в этом браузере, чтобы принять его сертификат, затем введите код сопряжения (pair выше). Загрузки, перехваченные расширением, и нажатие Загрузить с помощью Mister Download Manager по ссылке будут отправляться на сервер, а не на этот компьютер. Файлы cookie браузера не отправляются на сервер: загрузка, для которой требуется вход на сайт, останется на этом компьютере.
Что сервер не делает
- Видеостраницы (yt-dlp) и галереи изображений требуют вспомогательных программ, которые образ не включает.
- Ничего не открывает окно: загрузка, которая задала бы вопрос (дубликат, уже существующие файлы), принимает выбор, установленный в настройках, или не добавляется.
- Не публикуйте порт в интернете; вместо этого обращайтесь к вашей домашней сети через VPN.
Бесплатно, с открытым исходным кодом, без рекламы, без пробного периода.
Загрузить Mister Download Manager