Mister Download Manager
  1. Início
  2. Ajuda
  3. Executar o MDM em um servidor

Executar o MDM em um servidor

Execute o Mister Download Manager em um servidor doméstico ou NAS (Docker, Unraid, qualquer máquina Linux) sem uma janela, e envie downloads do seu telefone ou navegador: o servidor os baixa para suas próprias pastas, como um compartilhamento de rede.

É o mesmo MDM de um desktop: sua lista, categorias, filas, Agendador, limites de velocidade e torrents. Você o controla com a página do controle remoto (de qualquer telefone ou computador em sua rede), a extensão do navegador apontada para ele, ou sua linha de comando.

Novo: o modo servidor é novo nesta versão. Por favor, diga-nos como está sendo.

Com Docker

Crie a imagem a partir do código-fonte do MDM (uma imagem publicada virá depois):

git clone https://github.com/anefzaoui/misterdownloadmanager
cd misterdownloadmanager
docker build -t misterdownloadmanager .

A primeira compilação é longa (até uma hora em um servidor pequeno: o programa inteiro é otimizado como um só). A imagem é pequena, cerca de 175 MB: base slim do Debian, os dois programas do MDM e os certificados de download são verificados. Não precisa de bibliotecas de desktop: o MDM as carrega apenas para abrir uma janela, o que um servidor nunca faz.

Depois, execute-o, com uma pasta para as configurações e outra para os downloads. Crie as duas pastas primeiro, como o usuário que o MDM vai usar: uma pasta que o Docker cria para você pertence a root, e o MDM não pode usá-la.

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
  • /configmantém a lista, as configurações, o certificado e os dispositivos pareados.
  • /downloadsé onde os arquivos chegam: cada categoria tem sua pasta dentro (Music, Video, Torrents…). Monte um compartilhamento de rede lá para baixar diretamente nele.
  • --user: o usuário que possui essas pastas (o MDM é executado como nenhum usuário específico).

docker/compose.yml faz o mesmo com o Docker Compose.

Emparelhar seu celular

docker logs mdmmostra o endereço para abrir e, enquanto nenhum dispositivo estiver pareado, um código de pareamento com um código 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 …

Dentro de um contêiner, o endereço que o MDM encontra é o do próprio contêiner: dê a ele o que você abre, o endereço do servidor com a porta que você publicou, como -e MDM_REMOTE_URL=https://192.168.1.10:8463/, e o log e o código QR mostram esse. Em seguida, pareie como diz Controlar o MDM do seu telefone. Para outro código, a qualquer momento:

docker exec mdm misterdownloadmanager-cli pair

Para abrir a página pelo nome do servidor (https://nas.local:8463/), dê ao MDM esse nome: -e MDM_REMOTE_HOSTS=nas.local (vários: separados por vírgulas). Outros nomes são recusados, para que nenhuma página da web possa acessar o MDM através de um nome próprio.

No Unraid

docker/unraid.xml é um modelo: copie-o para /boot/config/plugins/dockerMan/templates-user/ na unidade flash, depois Docker → Adicionar Container e escolha misterdownloadmanager. Ele mapeia /config para appdata, /downloads para um compartilhamento, a porta 8463, e é executado como nobody:users (99:100), como os compartilhamentos do Unraid esperam. A imagem deve ser construída primeiro (acima), no servidor ou enviada para um registro que você usa. Se o log do container disser que uma pasta pertence a outro usuário, dê-a a nobody:users uma vez: chown -R 99:100 /mnt/user/appdata/misterdownloadmanager.

Sem Docker

Em qualquer máquina Linux com o MDM instalado (o .deb, .rpm, AppImage ou tar.gz):

misterdownloadmanager --headless --data ~/mdm-server --downloads /srv/downloads
Flag Ou a variável O que define
--data <folder> MDM_DATA_DIR a lista, configurações, certificado e dispositivos pareados
--downloads <folder> MDM_DOWNLOADS onde os downloads vão (a pasta de cada categoria dentro)
--port <number> MDM_REMOTE_PORT a porta do controle remoto (8463)
--listen <address> MDM_REMOTE_LISTEN onde ele escuta: todo endereço de rede local, a menos que seja fornecido
--hosts <names> MDM_REMOTE_HOSTS nomes além de seus endereços pelos quais a página pode ser aberta
MDM_REMOTE_URL o endereço da página como você a abre, mostrado com o código de pareamento

O controle remoto está ligado neste modo (MDM_REMOTE=off o desliga). Ele para de forma limpa, salvando sua lista, quando o sistema o para (docker stop, systemd, Ctrl+C). Funciona no Windows e macOS também, da mesma forma.

A linha de comando se comunica com ele como com um MDM de desktop, com a mesma pasta de dados: MDM_DATA_DIR=~/mdm-server misterdownloadmanager-cli status (uma vez api on), pair, e adicionando um endereço: misterdownloadmanager /d https://example.com/file.zip.

Enviar downloads do seu navegador

No menu da extensão do navegador, em Enviar downloads para → Outro Mister Download Manager (um servidor): digite o endereço do servidor, abra-o uma vez nesse navegador para aceitar o certificado e, em seguida, insira um código de emparelhamento (pair acima). Os downloads que a extensão intercepta e a opção Baixar com Mister Download Manager em um link serão enviados para o servidor em vez deste computador. Os cookies do navegador não são enviados para o servidor: um download que exige que você esteja conectado a um site permanecerá neste computador.

O que um servidor não faz

  • Páginas de vídeo (yt-dlp) e galerias de imagens precisam de seus auxiliares, que a imagem não inclui.
  • Nada abre uma janela: um download que faria uma pergunta (um duplicado, arquivos já existentes) usa a opção definida nas configurações ou não é adicionado.
  • Não publique a porta na internet; acesse sua rede doméstica por meio de uma VPN.

Gratuito, de código aberto, sem anúncios, sem período de teste.

Baixar Mister Download Manager