迫 @innei 大佬一天數更的更新速度,為保證隨時體驗到最新的特性,寫一個腳本來每日自動更新 Mix-Space 和 Shiro 非常有必要。
更新腳本#
我的 Mix-Space 後端是用 Docker Compose 部署的,而前端是 Shiro 的閉源版本 Shiroi,編譯後進行部署。
更新前後端的腳本如下:
#!/usr/bin/zsh
# 更新後端
echo "開始更新後端..."
cd /root/mix-space/core
docker compose pull && docker compose up -d
echo "後端更新完畢。"
echo "---------------------------------------------"
#更新前端
cd /root/mix-space/Shiroi
output=$(git pull)
if [[ $output == *"Already up to date."* ]]; then
echo "前端已經最新啦,不需要更新。"
else
echo "開始更新前端..."
npm install -g pnpm
npm install -g pm2
echo "開始安裝依賴..."
pnpm i
echo "依賴安裝完畢。"
echo "開始編譯..."
pnpm build
echo "編譯結束。"
echo "正在重啟前端..."
pm2 remove 0
pm2 start ecosystem.config.cjs
echo "重啟前端完畢"
fi
echo "最後更新時間:"
date
定時運行#
我設置的是每天 1 點 10 分進行自動更新,將日誌輸出到 /root/sh/update.log
中,您可以參考。
crontab -e
10 1 * * * /root/sh/mix-space-shiroi-update.sh >> /root/sh/update.log 2>&1
我完全是一個寫 shell 腳本的新手,雖然寫的很爛,但卓有成效。
您如果有更好的主意,歡迎在評論區和我討論。
此文由 Mix Space 同步更新至 xLog
原始鏈接為 https://xxu.do/posts/geek/update-Mix-Space-and-Shiro