| set -e | |
| # 定义目标目录 | |
| TARGET_DIR="/home/user/app" | |
| # 1. 检查并创建目录 | |
| if [ ! -d "$TARGET_DIR" ]; then | |
| echo "目录 $TARGET_DIR 不存在,正在创建..." | |
| mkdir -p "$TARGET_DIR" | |
| # 确保目录所有权归当前用户 (UID 1000) | |
| chown 1000:1000 "$TARGET_DIR" | |
| else | |
| echo "目录 $TARGET_DIR 已存在。" | |
| fi | |
| # 导出数据目录环境变量 | |
| export XDG_DATA_HOME=/data | |
| export OPENCODE_DATA_DIR=/data | |
| # 启动 opencode serve | |
| /home/user/.opencode/bin/opencode serve \ | |
| --hostname 0.0.0.0 \ | |
| --port 7860 \ | |
| --print-logs & | |
| OPCODE_PID=$! | |
| # 启动同步脚本 | |
| python3 /home/user/sync_to_dataset.py & | |
| SYNC_PID=$! | |
| wait -n | |
| kill $OPCODE_PID $SYNC_PID 2>/dev/null | |
| exit $? |