部署
沃爾網
命令範例
選項1
選項2
Docker 映像
支援平台
碼頭運行
Dockerfile
使用 Makefile 建置(推薦)
手動安裝和構建
使用 docker compose 建置(更簡單)
golang圖像:
節點影像:
前端
資料庫
後端
API文件
使用 docker compose 運行後端
使用案例
使用者介面
發展
Docker環境
建構前端
後端
部署
環境變數
本地託管的用於wakeonlan的網路應用程序,打開專用網路中的電腦。
使用 VPN 進入您的網絡,只需在瀏覽器中單擊即可喚醒您的電腦。
前端: Vue.js + TypeScript
後端: golang + Fiber
npm i -g @vue/clicd 前端 npm 安裝 npm 運行服務
資料庫已從 postgresql 切換到 sqlite。所以不需要設定資料庫,伺服器會處理sqlite。
光碟後端 mkdir -p 數據 go get -u github.com/cosmtrek/air# 將 go/bin 添加到路徑導出 PATH=$HOME/go/bin:$PATH # 在 linux 上,在 macair 上類似 # 開始實時重新加載
docker compose -f docker-compose-helpers.yml 運行 dev-backend
或make dev-backend
如需更多組態選項,請參閱後端和環境變數。
https://documenter.getpostman.com/view/UVRAJ7MZ?version=latest
該應用程式可以使用 docker 託管,這需要機器安裝docker
和docker compose
。
如果你想在沒有 docker 的情況下運行它(使用原生 golang),請參閱後面的部分:不使用 Docker 部署
修改docker compose.yml
和docker docker-compose-helpers.yml
中的映像標籤取決於您執行的機器。
golang:1.17.6-alpine3.15
節點:16
要部署應用程序,您不需要建立前端,只需從 github 下載版本即可。
或使用此指令make download-frontend
。
如果您需要建立它,請閱讀以下說明。
前端是用vuejs編寫的,需要手動建立產生一個dist
資料夾,其中包含index.html
和其他資源。
make build-frontend # 與 docker compose 方法完全相同,只是一個簡化的包裝器
如果你的機器上有 Nodejs 15+、npm,你可以 cd 進入frontend
CD前端 npm 安裝 npm 運行建置:pwa
如果您沒有安裝依賴項,則可以使用docker compose來建置前端生產版本。
docker compose -f docker-compose-helpers.yml 運行 build-frontend
有關後端的更多資訊和配置,請查看後端 README
您可以配置
伺服器連接埠
允許註冊的用戶數量
JWT 秘密與登入時間 (JWT_VALID_TIME)
運行make build-backend
來建立後端二進位。
如果安裝了 golang,也可以執行go build . -o server
backend
資料夾中的伺服器。
huakunshen/wol:latest
linux/arm64/v8
linux/arm/v6
inux/arm/v7
linux/amd64
docker 映像包含執行應用程式所需的所有內容,包括名為wol
wakeonlan cli。您可以使用 network=host 執行容器來使用wol
cli 工具。
docker 磁碟區建立 wol docker run -d --network=host --restart=unless-stopped --name wol-web -v wol:/wol-server/data haakunshen/wol:latest
或只執行make deploy
(上面的docker run
指令的別名)。
運行make deploy-test
以在沒有分離模式的情況下運行。
您可以按照說明新增自訂環境變數。
有 2 個版本的 Dockerfile 用於建置 docker 映像。
Dockerfile
執行make build-frontend
或make download-frontend
以產生生產版本
將 vue 前端和 golang 伺服器建置到鏡像中
Dockerfile
假設前端已經編譯(在frontend/dist
)
然後docker build -t huakunshen/wol:latest .
建立形象
make buildx
將產生多平台鏡像
可以透過以下方式新增/覆蓋環境變數:
新增environment:
到docker compose
service 或
將-e env_name=env_value
加入docker run
以下變數是預設環境變數。
PORT=9090 JWT_SECRET=secret JWT_VALID_TIME=14400 # in minute NUM_USER_ALLOWED=1
NUM_USER_ALLOWED
環境變數可用來指定允許註冊的使用者數量。如果您是唯一用戶,則預設值為 1。
開發過程中,資料庫和伺服器環境變數都可以在backend/.env
中修改
也檢查後端。
編輯backend/.env
cd 進入此目錄(wol-web)
docker運行-d --network=主機 --name wol-web -v ${PWD}/wol-web-data:/wol-server/data --env-檔案後端/.env 華坤神/wol:最新
docker運行-d --network=主機 --name wol-web -v ${PWD}/wol-web-data:/wol-server/data -e 連接埠=9090 -e JWT_SECRET=wol 秘密 -e JWT_VALID_TIME=20000 -e NUM_USER_ALLOWED=1 華坤神/wol:最新