Skip to content

Commit daa2c26

Browse files
yyyCodeclaude
andcommitted
docs: record message service deployment + business/message coupling
- README: document that business (Docker, CI) and message (manual, 8083) must be upgraded together — RPC matches by interface FQN, mismatch shows as "No provider" / 5002 in business - deploy/business/README.md: message manual deploy steps (build + scp + restart), Nacos verification, FAQ entry for the No-provider symptom - ci.yml: skip workflow on *.md-only pushes (docs changes no longer trigger a backend rebuild/redeploy) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 7f01cfc commit daa2c26

3 files changed

Lines changed: 37 additions & 14 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,9 @@ on:
1616
push:
1717
branches:
1818
- master
19-
paths:
20-
- 'OpenBlog-business/**'
21-
- 'OpenBlog-framework*/**'
22-
- 'vue/**'
23-
- 'pom.xml'
24-
- 'deploy/business/**'
25-
- '.github/workflows/ci.yml'
19+
# 文档(*.md)变更不触发部署;具体哪些 job 要跑由 jobs.changes 细粒度过滤
20+
paths-ignore:
21+
- '**/*.md'
2622

2723
jobs:
2824
# 检测变更范围,供后续 job 条件判断

‎README.md‎

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -72,17 +72,27 @@ cd vue && npm install && npm run dev
7272

7373
## 部署
7474

75+
后端两个服务需要**一起构建、一起升级**(business 经 Dubbo 调 message,接口包名强耦合):
76+
7577
```bash
76-
# 后端
77-
mvn -DskipTests package -pl OpenBlog-business -am
78-
java -jar -Xmx1024M -Xms256M OpenBlog-business/target/OpenBlog-business-*.jar
78+
# 1) business(Web 服务,8082)—— CI 已接入:push master 自动 Docker 部署
79+
mvn -pl OpenBlog-business -am package -DskipTests
80+
# 产物 OpenBlog-business/target/OpenBlog-business-1.0.0-SNAPSHOT.jar,Docker 化部署见 deploy/business/README.md
81+
82+
# 2) message(消息服务,8083,邮件通道)—— 暂未接入 CI,需手动部署
83+
mvn -pl OpenBlog-message -am package -DskipTests
84+
# 产物 OpenBlog-message/target/OpenBlog-message-1.0.0-SNAPSHOT.jar,上传服务器替换旧 jar 后重启
7985

8086
# 前端
8187
cd vue && npm run build
8288
# dist/ 交由 Nginx 托管,API 反代到 8082
8389
```
8490

85-
CI/CD:push `master` 自动触发构建与部署(GitHub Actions + 自托管 Runner)。
91+
> ⚠️ business 与 message 的 RPC 接口按全限定名匹配(`com.yqz.openblog.message.api.EmailRpcService`),
92+
> 升级后必须**同时重新部署**两者;只升一个会导致 Nacos 里 provider/consumer 对不上,
93+
> business 抛 "No provider"(5002 邮件服务暂不可用)。
94+
95+
CI/CD:push `master` 自动构建并 Docker 部署 business(GitHub Actions + 自托管 Runner);message 暂未接入 CI。
8696

8797
---
8898

‎deploy/business/README.md‎

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,23 @@ compose 里已留注释,把服务器上的 `application.yaml` 放到 `/www/www
5656
容器 `/app/application.yaml` 即可覆盖 jar 内配置(Spring Boot 外部配置文件优先级更高)。例如
5757
服务器 IP 变化、切 storage 类型、改 Redis 密码时,改这一个文件 + 重启容器即可,不用重新打包。
5858

59-
## 扩展:message 服务同理
59+
## message 服务(暂未 Docker 化,手动部署)
6060

61-
`OpenBlog-message` 也是独立服务,参照本目录再加一份 `deploy/message/`(Dockerfile +
62-
docker-compose + deploy 脚本),端口 8083,JAVA_OPTS 由原宝塔命令决定。当前先只做 business。
61+
`OpenBlog-message`(端口 8083,邮件通道)目前仍是宝塔 Java 项目,未走 Docker/CI,需手动部署:
62+
63+
```bash
64+
# 本机(项目根目录)打包
65+
mvn -pl OpenBlog-message -am package -DskipTests
66+
67+
# 上传到服务器并重启(路径换成你服务器上 message 服务的实际目录)
68+
scp OpenBlog-message/target/OpenBlog-message-1.0.0-SNAPSHOT.jar root@10.21.76.221:/www/wwwroot/java/openblog-message/
69+
# 宝塔面板重启 openblog-message 项目(或 systemctl restart openblog-message)
70+
```
71+
72+
> ⚠️ **business 与 message 必须一起升级**。RPC 按接口全限定名匹配
73+
> `com.yqz.openblog.message.api.EmailRpcService`。只升级 business 时,message 在 Nacos
74+
> 仍注册旧接口包名 → business 订阅不到 → "No provider" → 5002「邮件服务暂不可用」。
75+
> 升级 message 后到 Nacos 服务列表确认 provider 为新包名(`openblog-message`)再联调。
6376
6477
## 进阶:CI 全自动(已实现)
6578

@@ -78,6 +91,10 @@ docker-compose + deploy 脚本),端口 8083,JAVA_OPTS 由原宝塔命令
7891

7992
## 常见问题
8093

94+
- **验证码发不出,business 日志抛 5002「邮件服务暂不可用 / No provider」**:message 服务(8083)
95+
没在跑,或 Nacos 里注册的接口包名与 business 不一致。到 Nacos 服务列表核对 provider 是否为
96+
`openblog-message` / `com.yqz.openblog.message.api.EmailRpcService`;改名后 business 与
97+
message 必须一起重新部署(见上文「message 服务」)。
8198
- **8082 被占用**:宝塔 Java 项目没停,先停掉。
8299
- **容器起不来 / 一直重启**:`docker logs openblog-business` 看日志;多为连不上
83100
Nacos/MySQL/Redis(确认服务器能访问 10.21.76.221 对应端口、防火墙/安全组放行)。

0 commit comments

Comments
 (0)