2020-03-17 | UNLOCK

利用caddy與docker搭建靜態網頁服務器

最近在想還能拿VPS來做什麼,覺得拿來搭個簡易的檔案服務器,生成下載鏈接分享一些會被國內網盤封殺的小檔案給朋友應該不錯。本來想搭建像owncloud、nextcloud或pydio之類的網盤,但是配置太麻煩。後來發現一個簡單的靜態檔案服務器就能完成需求了,用docker直接部署非常容易。

項目鏈接

https://github.com/halverneus/static-file-server

docker-compose設置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
caddy:
build:
context: ./src/caddy
ports:
- "80:80"
- "443:443"
volumes:
- ./src/caddy/caddy:/root/.caddy
- ./src/caddy/Caddyfile:/etc/Caddyfile
- /etc/localtime:/etc/localtime:ro
entrypoint: "caddy --conf /etc/Caddyfile"
environment:
- ACME_AGREE=true
networks:
- file
restart: unless-stopped

file_server:
image: halverneus/static-file-server:latest
volumes:
- ./data/shared:/web
networks:
- file

networks:
file:

請依自己的情形調整相關路徑

Caddy 反向代設置

1
2
3
4
5
share.domain.com {
gzip
timeouts none
proxy / file_server:8080
}

確定share.domain.com有正確解析到VPS後,輸入網址就可以看到對應資料夾內的檔案了。

Screenshot


設計感基本上是負的。反正江湖救急,能用就行

Conclusion

利用Caddy和Docker,一個基本的檔案服務器非常簡單就設置好了,雖然網頁非常簡陋,但用來分享些小檔案(例如vpn客戶端安裝檔)己綽綽有餘,反正搬瓦工最便宜的機子20G硬盤也不要期望能裝多少東西。若有網盤以及顏值需求,可以用以上提到的其他網盤工具搭建。

評論加載中