使用docker和nginx搭建一個下載伺服器

bboysoul發表於2018-08-29

概述

這個是以前在公司搞得,因為公司的軟體包比較大,然後每次在本地傳給客戶的時候很慢,一般要一天才可以傳完,之後決定把軟體包放到別的地方讓使用者自己下載,要求下載伺服器有下面幾個需求

  • 支援斷點續傳
  • 支援密碼訪問
  • 支援控制傳輸速度

其實nginx預設就是支援斷點續傳的,我們要配置的就是密碼訪問和控制傳輸速度而已,為了簡單,我直接使用docker做,這樣搭建環境幾乎就快樂很多,廢話不多說,放上專案地址

專案地址

https://github.com/bboysoulcn/nginx-down

歡迎star和follow

使用方法

首先clone下來

git clone https://github.com/bboysoulcn/nginx-down

之後根據需求修改你的下載速度

vim nginx.conf

修改下面這行就可以

limit_rate 2048k;

上面我就是限制了2m的下載速度

下面是修改輸入密碼提示語的地方

        # 密碼檔案位置和提示語
    auth_basic "motherfucker man";
    auth_basic_user_file /etc/nginx/passwd;

修改完成之後儲存

之後修改下載的埠,修改下面這個檔案

vim docker-compose.yml

    ports:
      - 8082:80

我現在使用的是8082埠下載的,修改8082為你想要的埠就可以

修改需要下載的目錄位置

也就是你要把你要下載的檔案放在哪一個目錄

    volumes:
      - /home/data:/usr/share/nginx/html/data

我現在是/home/data下,你修改成你的就可以

最後生成你的密碼,刪除下面這個檔案

rm -rf passwd

之後重新生成

安裝下面這個工具

sudo apt install apache2-utils

使用下面的命令生成密碼

htpasswd -c passwd bboysoul

bboysoul是你的使用者名稱

最後執行下面命令啟動就可以

docker-compose up -d

最後瀏覽器訪問ip:8082就可以

最後

如果為了安全可以在前面再加一個nginx做根據域名埠轉發,這樣就可以直接使用域名訪問了

歡迎關注Bboysoul的部落格www.bboysoul.com
Have Fun


相關文章