2.3 KiB
yunyan-sas 部署
一键发布测试环境(dev)
cd deploy
./dev-deploy-all.sh # 交互选公司(环境),按 app → console → admin 全量发布
./dev-deploy-all.sh along # 全量发到阿龙测试环境
./dev-deploy-all.sh along app admin # 只发 app 和 admin
./dev-deploy-all.sh along -y -k # 免确认;某个服务失败也继续发后面的
./dev-deploy-all.sh along -n # dry-run,只打印会执行什么
环境:目前只有 along(阿龙),与各服务 dev-deploy.sh 的 ENVS 同名,脚本启动时会交叉校验,
一边加了新环境另一边忘了加会直接报错。
⚠️ 本仓库只剩阿龙一家,服务器与镜像仓库都是。 2026-09-13 先移除了云雁/灵谱的部署目标(SSH 私钥指向另一台开发机,本机没有钥匙, 留着只会在菜单里制造误选);2026-09-23 又删掉了它们的镜像仓库档案 (
registry.voitrans.net/registry.lingpu.net),prod-build.sh现在只能推阿龙仓库。 要恢复,从 git 历史里取回env_profile/region_profile段与registry_profile的对应 case。
它只是按顺序调各服务自己的 deploy/<服务>/dev-deploy.sh <环境> 并汇总结果,部署规则仍然
只有一处;单独发某个服务照旧进服务目录跑 ./dev-deploy.sh <环境>。服务器上还没有真实 .env
时子脚本会推完镜像就停下,汇总表里记为「跳过」而不是「成功」。
各服务的脚本
每个服务目录下三个脚本:dev-deploy.sh(测试环境,固定 tag dev-latest)、
prod-build.sh <版本> [公司](构建并推送带版本号的镜像)、prod-deploy.sh(只做远端拉取重启)。
服务器上的 .env 与 confs/*.yaml 由人工维护,脚本只下发 *.example 模板,绝不覆盖。
console/— Go 控制面服务(:8080)admin/— Nuxt 管理前端(:3000,通过CONSOLE_BACKEND连 console)app/— Go 业务后端(多应用共用镜像,远端目录/容器名按应用区分,见prod-deploy.sh的APPS)
⚠️ 部署目标与仓库密码写死在脚本里且会进 git(私有仓库内可接受;公开前务必清理
deploy/registry-profiles.sh 的 REGISTRY_PASS 与各 *-deploy.sh 的 DEPLOY_HOST)。