你可能常常覺得在自己電腦上抓 BitTorrent 不方便,
不要緊,身為一個資訊人,來自己架一台伺服器,使用 aria2 下載在幾乎任何協定上的資源。
本文以 Ubuntu 14.04 作例。
本篇為使用加密連線的架設教學,若需要無加密連線的架設教學,請參閱:/deploy-unsecure-aira2-and-aria2_webui-on-docker
此方法與 Cloudflare 搭配使用會有問題,一個是如果搭配 Cloudflare Universal SSL 會有無限重定向迴圈的問題,另一個就是需要關閉「Speed」選單中「Auto Minify」中的「JavaScript」,否則管理網頁會出現問題。
部署 #
啟動 jwilder/nginx-proxy
映像檔 #
執行下列指令以啟動 jwilder/nginx-proxy
映像檔並設定伺服器監聽並轉發 80、443 TCP 連線埠的連線到容器內,以及自主機中的 /data/certs
資料夾存取憑證檔案、自主機中的 /data/htpasswd
資料夾存取 Basic Access Authentication 設定檔。
docker run -d -p 80:80 -p 443:443 --name nginx-proxy -v /data/certs:/etc/nginx/certs:ro -v /etc/nginx/vhost.d -v /var/run/docker.sock:/tmp/docker.sock:ro -v /data/htpasswd:/etc/nginx/htpasswd -v /usr/share/nginx/html jwilder/nginx-proxy
啟動 jrcs/letsencrypt-nginx-proxy-companion
映像檔 #
再來是要啟動 jrcs/letsencrypt-nginx-proxy-companion
映像檔,且自主機中的 /data/certs
資料夾存取憑證檔案:
docker run -d -v /data/certs:/etc/nginx/certs:rw --volumes-from nginx-proxy -v /var/run/docker.sock:/var/run/docker.sock:ro jrcs/letsencrypt-nginx-proxy-companion
啟動 aria2 RPC Server 容器 #
下面的資料會將 aria2 的資料都存在 /data/aria2/
。這裡你需要將所有的 {DOMAIN}
、{EMAIL}
、{RPC_SECRET}
分別換為你 aria2 的網域名稱、你的 email address(用來註冊 letsencrypt)以及隨機生成的密碼(這個要記下來)。
docker run -itd -e VIRTUAL_HOST={DOMAIN} -e "LETSENCRYPT_HOST={DOMAIN}" -e "LETSENCRYPT_EMAIL={EMAIL}" -v /data/aria2/:/data -v /data/certs:/data/certs --net host -p 6800:6800 timonier/aria2 --dir=/data --enable-rpc --rpc-listen-all=true --rpc-certificate=/data/certs/{DOMAIN}.crt --rpc-private-key=/data/certs/{DOMAIN}.key --rpc-secure --rpc-secret={RPC_SECRET}
啟動 aria2 網頁介面 #
接下來是啟動 aria2 網頁介面,其中,請將 {DOMAIN}
、{EMAIL}
分別換為你 aria2 的網域名稱以及你的 email address(用來註冊 letsencrypt):
docker run -itd -p 1828:80 -e VIRTUAL_HOST={DOMAIN} -e "LETSENCRYPT_HOST={DOMAIN}" -e "LETSENCRYPT_EMAIL={EMAIL}" timonier/webui-aria2
aria2 網頁管理介面密碼設定 #
若你需要使用 Basic Access Authentication 進行 aria2 網頁管理界面的登入,請執行下列指令,其中,DOMAIN
請換為你 aria2 的網域名稱、USERNAME
換為你要設定的登入的賬號、PASSWORD
換為你要設定的登入密碼。(密碼會進行加密)
apt-get install apache2-utils
htpasswd -bc /data/htpasswd/DOMAIN USERNAME PASSWORD
設定連線資料 #
請以你喜好的網頁瀏覽器打開:http://domain 。
你大概會看到這樣的畫面:
右上角應當會彈出連線失敗的對話框,此時請點開選單的「Settings」->「Connection Settings」,它應該長這樣:
請照著圖示內容進行設定,其餘設定請維持預設。填寫完成後,按下最下方的藍色按鈕「Save Connection configuration」進行設定的儲存。
接著,右上角應該會彈出連線成功的訊息。
測試 #
你可以試試下載這個 1GB 大小的下載測試檔案:
若你看到如下的畫面,說明你完成設定囉!