name: deploy-digital-me # 推送到 main → 自动同步代码到 NAS 并重新构建、重启容器 # 目标:http://192.168.110.4:8090 on: push: branches: [main] workflow_dispatch: {} jobs: deploy: runs-on: ubuntu-latest env: TZ: Asia/Shanghai steps: - name: 拉取代码 uses: actions/checkout@v4 - name: 拉取 Git LFS 大文件 run: | set -e apt-get update -qq apt-get install -y -qq git-lfs git lfs install git lfs pull - name: 同步到 NAS 并重建容器 run: | set -e export TARGET_DIR=/volume1/docker/digital-me tar czf - \ --exclude=.git \ --exclude='战役素材' \ --exclude='水墨遮罩' \ --exclude='客户成片' \ --exclude='artifacts' \ digital-me-web digital-me-backend compose.yaml \ | ssh -i /root/.ssh/nas_ci \ -o StrictHostKeyChecking=no \ -o UserKnownHostsFile=/dev/null \ -o LogLevel=ERROR \ 18702851751@192.168.110.4 \ "mkdir -p $TARGET_DIR && tar xzf - -C $TARGET_DIR && cd $TARGET_DIR && sudo -n /usr/local/bin/docker compose up -d --build" echo "部署完成"