Files
aurak/deploy.sh
T
Developer 0a9588abb7 feat: implement QuestionBank CRUD with pagination and template query
- Add pagination support to findAll (page, limit query params)
- Add findByTemplateId method to service
- Add GET /by-template/:templateId endpoint to controller
- Service already includes CRUD for QuestionBank and QuestionBankItem
2026-04-23 17:19:11 +08:00

44 lines
2.3 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
set -e
# 进入脚本所在目录(确保和 docker-compose.yml 在同一目录)
cd "$(dirname "$0")"
echo "======================================================="
echo "开始在服务器上拉取镜像并一键部署"
echo "======================================================="
echo ">> 正在从阿里云镜像库拉取最新的 server 和 web 镜像..."
# 如果拉取需要密码,请确保服务器上已经执行过 docker login
if ! docker pull registry.cn-qingdao.aliyuncs.com/fzxs/aurak-server:latest; then
echo "拉取 server 镜像失败!请确保服务器已登录 registry.cn-qingdao.aliyuncs.com"
exit 1
fi
if ! docker pull registry.cn-qingdao.aliyuncs.com/fzxs/aurak-web:latest; then
echo "拉取 web 镜像失败!请确保服务器已登录 registry.cn-qingdao.aliyuncs.com"
exit 1
fi
echo ">> 为了让 docker-compose 能直接使用拉取的镜像,重新标记(Tag)镜像..."
docker tag registry.cn-qingdao.aliyuncs.com/fzxs/aurak-server:latest aurak-server:latest 2>/dev/null || true
docker tag registry.cn-qingdao.aliyuncs.com/fzxs/aurak-web:latest aurak-web:latest 2>/dev/null || true
# 因为 docker-compose 没有指定 image,会默认通过文件夹名字或我们指定的标签运行
# 如果 docker-compose 仍然会去找默认名字,我们需要让环境变量里的 image 为我们拉取的,
# 不过最简单的方式是,通过环境变量临时覆盖,或者使用 docker compose up 的特性
# 但既然不能改 docker-compose.yml,我们可以通过 IMAGE_NAME 环境变量来覆盖吗?没有设定的话不行。
# 所以我们可以通过 docker tag 来把阿里云的镜像打成 docker-compose.yml 默认预期的服务名字
# 如果目录叫 AuraKdocker-compose 默认生成的镜像名叫 aurak-server 和 aurak-web
docker tag registry.cn-qingdao.aliyuncs.com/fzxs/aurak-server:latest aurak-server 2>/dev/null || true
docker tag registry.cn-qingdao.aliyuncs.com/fzxs/aurak-web:latest aurak-web 2>/dev/null || true
echo ">> 正在重新创建并启动容器..."
# --no-build 确保在服务器上不会意外使用本地代码触发构建
docker compose up -d --no-build server web
echo "======================================================="
echo "部署完成!当前服务运行状态:"
docker compose ps
echo "======================================================="