Files
wxserver/.gitea/workflows/deploy.yml
T
yuming 06d22884b9
部署到群晖 / deploy (push) Successful in 34s
修复持久化目录创建:通过 docker 在宿主创建
runner 容器内 mkdir 创建的是容器路径,不是宿主上的真实路径。
改成通过已构建好的 birthday-server 镜像挂宿主 /volume1 来 mkdir。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-01 15:53:40 +08:00

57 lines
2.0 KiB
YAML

name: 部署到群晖
on:
push:
branches: [main, master]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- name: 安装 Docker CLI
run: |
sed -i 's|deb.debian.org|mirrors.tuna.tsinghua.edu.cn|g' /etc/apt/sources.list /etc/apt/sources.list.d/*.list 2>/dev/null || true
sed -i 's|security.debian.org|mirrors.tuna.tsinghua.edu.cn/debian-security|g' /etc/apt/sources.list /etc/apt/sources.list.d/*.list 2>/dev/null || true
apt-get update -qq
apt-get install -y -qq docker.io
- name: 拉取代码
uses: actions/checkout@v4
- name: 构建镜像
run: docker build -t birthday-server:latest ./server
- name: 停止旧容器
run: |
docker stop birthday-server 2>/dev/null || true
docker rm birthday-server 2>/dev/null || true
- name: 准备持久化目录(在宿主上创建)
run: |
docker run --rm -v /volume1/docker/apps:/apps birthday-server:latest \
mkdir -p /apps/birthday-server/data
- name: 启动新容器
env:
WX_APPID: ${{ secrets.WX_APPID }}
WX_APPSECRET: ${{ secrets.WX_APPSECRET }}
WX_TEMPLATE_ID: ${{ secrets.WX_TEMPLATE_ID }}
WX_MINIPROGRAM_STATE: ${{ secrets.WX_MINIPROGRAM_STATE }}
REMINDER_CRON: ${{ secrets.REMINDER_CRON }}
run: |
docker run -d \
--name birthday-server \
--restart unless-stopped \
-p 15002:3000 \
-v /volume1/docker/apps/birthday-server/data:/app/data \
-e TZ=Asia/Shanghai \
-e WX_APPID="$WX_APPID" \
-e WX_APPSECRET="$WX_APPSECRET" \
-e WX_TEMPLATE_ID="${WX_TEMPLATE_ID:-6J7Stt-lu7DKU6jblJ0nZGq_D81z5glnksf7qWfy5Yw}" \
-e WX_MINIPROGRAM_STATE="${WX_MINIPROGRAM_STATE:-formal}" \
-e REMINDER_CRON="${REMINDER_CRON:-0 9 * * *}" \
birthday-server:latest
- name: 部署完成提示
run: echo "部署完成,访问 http://192.168.1.66:15002/api/health"