#!/usr/bin/env bash # 拉取代码并重启项目(线上项目根目录:/home/yxd/project/yh_web) # 行尾:LF(.gitattributes) # 用法:cd /home/yxd/project/yh_web && ./pull-and-restart.sh # 或指定目录:PROJECT_ROOT=/home/yxd/project/yh_web ./pull-and-restart.sh set -e ROOT="${PROJECT_ROOT:-$(cd "$(dirname "$0")" && pwd)}" cd "$ROOT" echo "==========================================" echo " yh_web 拉取并重启" echo " 路径: $ROOT" echo "==========================================" [ -f server/.env ] && sed -i 's/\r$//' server/.env [ -f server/.env ] && set -a && source server/.env && set +a echo "[1/2] 拉取代码..." git pull echo "" echo "[2/2] 重新构建并启动(与 start-only-server 相同:API 用 GOPROXY/vendor)..." export GOPROXY="${GOPROXY:-https://goproxy.cn,direct}" docker compose build --no-cache docker compose up -d --force-recreate echo "" echo "完成. api:9527 web:9528 admin:9529"