caddy 相比nginx 是一個不錯的輕量代理服務器,支持的功能也是比較多的, 同時插件也挺多
demo 測試的是經過git 插件進行一個使用spec-md 編寫的文檔近實時編譯以及預覽node
項目使用docker 構建,我已經在dockerhub 放了構建好的鏡像ios
nodejs 項目,是須要進行近實時編譯,發佈的文檔nginx
https://github.com/rongfengliang/spec-md-demo.git 項目的運行構建運行比較簡單 yarn build 便可
集成git插件git
├── Caddyfile ├── Dockerfile └── docker-compose.yaml
Caddyfile: 配置caddy git 插件,每一個10s進行一次git pull 同時又變更,進行代碼構建,使用then 指令 0.0.0.0 root src git https://github.com/rongfengliang/spec-md-demo.git { interval 10 then yarn build } Dockerfile: node 基礎環境以及caddyfile 的添加 FROM abiosoft/caddy RUN apk add nodejs RUN apk add npm RUN npm install -g yarn WORKDIR /src ADD Caddyfile /etc/Caddyfile docker-compose.yaml: docker-compose 運行配置 version: "3" services: website: build: ./ image: dalongrong/caddy-node-build ports: - "8090:2015"
docker-compose build
docker-compose up -d
經過日誌能夠看出來
10s pull 沒有改變的
咱們修改github 項目(website)
es6
好比咱們使用nodejs es6 等高級特性編寫代碼,可是須要使用babel 或者相似的工具進行編譯,可是又想實時查看效果,使用就是不錯的, 同時集成容器技術,能夠減小好多開發上的開銷
https://github.com/rongfengliang/spec-md-demo
https://caddyserver.com/docs/http.git
https://github.com/abiosoft/caddy-docker
https://github.com/rongfengliang/caddy-git-nodejsgithub