Synology 裝 JDownloader:Docker + 網頁 VNC 下載免空
你一定遇過這個情況:在 Download Station 貼上一個 Rapidgator、1fichier 或某個免空的連結,結果不是直接失敗,就是卡在那裡完全不動。Download Station 明明 BT 和磁力連結都下得好好的,偏偏這些「一鍵空間」就是搞不定。
問題不在你,是 Download Station 本來就不擅長處理免空。這篇要教你的,是我自己踩過坑後找到的解法:在 NAS 上用 Docker 跑一個 JDownloader2 容器,透過瀏覽器的 noVNC 網頁介面操作。設定好之後,NAS 24 小時幫你掛著下載,不用開電腦、不用對外開 port、連 MyJDownloader 帳號都不用申請。
⚠️ 使用須知: 本文介紹下載工具的技術用法,請僅用於下載你擁有合法權利的內容——開源軟體、Linux 發行版、創用 CC 授權素材,或你本人擁有的檔案。下載、散布受著作權保護的影音、軟體或電子書等盜版內容可能涉及法律責任,請自行承擔。
🎯 這篇適合誰
| 你的情況 | 建議看的段落 |
|---|---|
| Download Station 下載免空一直失敗 | 為什麼 Download Station 下不了免空 |
| 想直接看怎麼架 | 用 Docker 部署 JDownloader |
| 擔心安全,網頁介面會不會被別人連 | 設定 VNC 密碼 |
| 想在外面也能丟連結下載 | 遠端存取:搭配 Tailscale |
| 覺得網頁操作很慢 | 操作偏慢?這樣用順很多 |
🤔 為什麼 Download Station 下不了免空
先搞懂原理,你才知道為什麼要換工具。
Download Station 擅長的是有明確、固定下載網址的東西:
- BT 種子與磁力連結
- 直接的 HTTP / FTP 檔案連結
- RSS 自動訂閱下載
- 少數有內建 host plugin 的網站
但免空(file hosting,像 Rapidgator、Katfile、1fichier、TakeFile,以及部分 MEGA 連結)的下載流程完全不一樣:
- 點下載後要等待倒數才給連結
- 中間夾著驗證碼(captcha)
- 免費用戶限速、限制同時下載數
- 真正的下載網址是動態產生、會過期的,不是固定那條
- 要全速下載通常得登入 premium 帳號
Download Station 的 host 支援清單又少又舊,這些動作它幾乎都處理不來——所以你貼進去就是失敗或卡死。(Download Station 本身怎麼用,看這篇:Download Station 教學:NAS 下載 BT、磁力、RSS。)
JDownloader 的強項正好就是這個。 它內建龐大的 host 解析引擎,會自動等倒數、處理大部分驗證碼、合併分卷壓縮檔、下載完自動解壓縮,還能掛上你的 premium 帳號全速下載。免空下載這件事,它就是專門做這個的。
🧩 JDownloader 跑在 NAS 上長什麼樣
JDownloader 本來是一套桌面 Java 程式。我們用的 jlesage/jdownloader-2 這個 Docker image 很聰明,它把整個程式包進容器,再透過 noVNC 把畫面投到網頁上——你用瀏覽器打開 http://NAS-IP:5800,就像遠端桌面一樣操作這套程式,不用在 NAS 上裝任何 GUI。
整個流程就是:瀏覽器連進 noVNC 網頁 → 在 JDownloader 裡貼上免空連結 → 它自動解析下載 → 檔案直接存進 NAS 的下載資料夾。NAS 本來就 24 小時開著,所以你的電腦關機它照樣下載。
如果你對 Docker 還不熟,可以先看 NAS Docker 新手入門 建立基本概念。
📦 用 Docker 部署 JDownloader
先查出你的 UID / GID
容器要用你的使用者身分寫入下載資料夾,否則檔案權限會亂掉。先 SSH 進 NAS(控制台 → 終端機與 SNMP → 開啟 SSH),執行:
id
會看到類似:
uid=1026(myuser) gid=100(users) ...
記下 uid(這裡是 1026)和 gid(通常是 100,也就是 users 群組)。
建立資料夾
mkdir -p /volume1/docker/jdownloader
mkdir -p /volume1/downloads
/volume1/docker/jdownloader:放 JDownloader 的設定/volume1/downloads:下載完成的檔案會放這裡(你也可以用 File Station 先建好一個共用資料夾)
docker-compose.yml
version: "3.8"
services:
jdownloader:
image: jlesage/jdownloader-2:latest
container_name: jdownloader
restart: unless-stopped
ports:
- "5800:5800" # noVNC 網頁介面
volumes:
- /volume1/docker/jdownloader:/config:rw
- /volume1/downloads:/output:rw
environment:
- USER_ID=1026 # 換成你的 UID
- GROUP_ID=100 # Synology users 群組
- TZ=Asia/Taipei
- VNC_PASSWORD=設一組你的密碼
- KEEP_APP_RUNNING=1 # 關掉網頁視窗仍持續下載
幾個關鍵設定說明:
/output:容器內部固定是/output,對應到你 NAS 的/volume1/downloads。JDownloader 裡面的下載路徑要設成/output。KEEP_APP_RUNNING=1:很重要。設了之後就算你關掉網頁分頁,JDownloader 仍在容器裡繼續跑,下載不會中斷。VNC_PASSWORD:網頁介面的密碼,下一段詳細說明。
透過 Container Manager 部署
DSM 7.2 的 Container Manager → 專案 → 新增 → 選擇剛剛的 docker-compose.yml 路徑,建立並啟動。等約 30 秒容器跑起來。
接著打開瀏覽器,輸入 http://NAS-IP:5800,就會看到 JDownloader 的操作畫面。
🔒 設定 VNC 密碼保護網頁介面
這一步千萬不要跳過。noVNC 網頁介面預設沒有密碼,等於任何能連到你 NAS 5800 port 的人都能操作你的 JDownloader——這很危險。
最簡單的方式就是上面 compose 裡的 VNC_PASSWORD 環境變數,設一組密碼。重啟容器後,打開 http://NAS-IP:5800 就會先要求輸入密碼才能進入。
更嚴謹的做法: 環境變數理論上可被
docker inspect看到。如果你很在意,可以改成把密碼存在檔案裡——在/volume1/docker/jdownloader放一個.vncpass_clear檔案、內容寫純文字密碼,容器第一次啟動時會自動加密並刪除原檔。一般家用環境用環境變數就夠了。
再搭配下一段的內網 + Tailscale 原則,安全性其實相當足夠。
🚀 第一次使用:貼連結開始下載
進入網頁介面後,操作邏輯很單純:
1. 設定下載目錄
左下角「設定 → 一般」把預設下載資料夾改成 /output(對應你的 /volume1/downloads)。這步只要設一次。
2. 貼上連結
JDownloader 的核心是 LinkGrabber(連結收集器)。你有兩種方式丟連結:
- 直接在 LinkGrabber 分頁貼上免空網址
- 複製一堆連結後,JDownloader 會自動偵測剪貼簿(注意:透過 noVNC 要用網頁的剪貼簿功能,見下方技巧段)
貼進去後,JDownloader 會自動解析每條連結,顯示檔名、大小、是否可用。
3. 開始下載
確認沒問題後,右鍵 → 「開始下載」。它會自動處理倒數、驗證碼,分卷壓縮檔下載完還會自動合併、解壓縮(如果你開啟了 Extract 外掛)。
檔案下載完,直接出現在 NAS 的 /volume1/downloads,用 File Station、手機 DS file、或 Synology Drive 都能立刻取用。
🔑 進階:掛上 premium 帳號全速下載
如果你有付費的免空 premium 帳號(例如 Rapidgator premium),掛上去就能解除免費用戶的限速與等待:
設定 → 帳號管理(Account Manager) → 新增 → 選擇對應的 host → 輸入帳號密碼。
之後 JDownloader 下載該 host 的檔案就會自動用 premium 全速,不再需要等倒數或過驗證碼。沒有 premium 帳號也能用,只是速度受免費限制。
🌐 遠端存取:搭配 Tailscale
JDownloader 的一大優點是完全不需要對外開放。jlesage/jdownloader-2 不像某些方案需要綁定 MyJDownloader 雲端帳號才能遠端操作——你只要能連進 NAS 內網就能用。
在家裡,直接 http://NAS-IP:5800 即可。出門在外想丟連結下載,最安全的方式是用 Tailscale 連回家裡內網,一樣輸入 http://NAS-IP:5800 操作,全程加密、不用在路由器開任何 port,攻擊面接近於零。
千萬不要為了方便,直接把 5800 port 透過 DDNS 對外開放——那等於把你的下載工具暴露在公網上。
🐢 操作偏慢?這樣用順很多
老實說,noVNC 網頁介面操作起來會有點延遲——畢竟整個桌面畫面是透過網頁串流過來的,貼字、拖拉會感覺鈍鈍的。這是這個方案唯一的缺點,但有幾個技巧可以讓體驗順很多:
- 善用 noVNC 的剪貼簿面板:網頁左側有個工具列,裡面有剪貼簿功能,把本機複製的連結貼進那個欄位送進遠端,比在畫面上逐字打快太多。
- 設定一次就好:下載目錄、解壓縮、帳號這些設定好之後就別再動,平常只需要貼連結、按下載。
- 丟完連結就關網頁:因為
KEEP_APP_RUNNING=1,你按下下載後可以直接關掉瀏覽器分頁,JDownloader 在容器內持續跑,下載完再回來看。 - 想要大一點的操作視窗:可以在 compose 加
DISPLAY_WIDTH=1600、DISPLAY_HEIGHT=900環境變數,網頁桌面就會更寬敞。
把它當成「丟了就走」的背景下載機,而不是需要一直盯著的工具,體驗就會好很多。
❓ 常見問題
Q:這跟 Download Station 衝突嗎?兩個可以並存嗎?
完全可以並存,而且建議這樣用。BT、磁力連結繼續用 Download Station(它做這個很穩),免空就交給 JDownloader,各司其職。
Q:下載的檔案權限會不會有問題?
只要 compose 裡的 USER_ID / GROUP_ID 填的是你自己的 UID/GID,下載的檔案擁有者就是你,File Station 直接能讀寫,不會出現權限鎖死。
Q:容器吃多少資源?
JDownloader 是 Java 程式,閒置時 RAM 約 300–500MB,下載與解壓縮時會升高。對 DS923+ 這類機型完全沒負擔,但很舊、記憶體只有 2GB 的入門機型要留意。
Q:可以排程、限速嗎?
可以。JDownloader 內建流量限速設定,也能設定每日下載時段(設定 → 連線管理)。想讓它半夜才全速下載、白天讓出頻寬,都做得到。
Q:升級 JDownloader 版本要怎麼做?
JDownloader 本身會自動更新核心。容器要更新就在 Container Manager 重新拉取 jlesage/jdownloader-2:latest 映像再重啟,設定都在 /config volume 裡,不會遺失。
Q:MEGA、Google Drive 這種也能下載嗎?
MEGA 連結 JDownloader 支援度很好。Google Drive 視分享設定而定,部分可以。它支援的 host 非常多,貼進 LinkGrabber 它會直接告訴你能不能解析。
下載這件事,與其每次開電腦、開瀏覽器、跟驗證碼和倒數搏鬥,不如把工作交給那台本來就 24 小時開著的 NAS。Download Station 顧好它擅長的 BT,免空丟給 JDownloader 容器掛在背景跑——貼完連結就能關掉網頁去做別的事,回來檔案已經靜靜躺在 NAS 裡了。
🔗 延伸閱讀
- Download Station vs JDownloader:NAS 下載工具怎麼選 — 兩個工具的完整比較與分工建議
- Download Station 教學:Synology NAS 下載 BT、磁力、RSS — BT 與直連交給它,免空才用 JDownloader
- Synology Container Manager 完整教學:DSM 7.2 用網頁管理 Docker
- Tailscale 完整教學:安全連回家裡內網不用開 port