1. 确保pod开启了JPDA端口(运维协助)
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar xxx.jar
注意上述端口为:5005
案例:
在jenkins配置文件增加如下配置:

2. yaml配置文件修改(运维协助)
yaml
containers:
- name: spring-app
# ...
ports:
- containerPort: 8080 # 应用端口
- containerPort: 5005 # **调试端口 (关键)**
案例:

3. 建立端口转发隧道
shell
## 1. 找到需要调试的pod名称
kubectl get pods -n <your-namespace>
## 例如C大脑: kubectl get pods -n cbrain
## 2. 执行端口转发命令
kubectl port-forward <pod-name> 5005:5005 -n <your-namespace>
## 注意:这里的 5005是第一步里面JPDA开启的端口
案例:
shell
kubectl port-forward cbrain-sipoc-build-76c44cc498-xm9q4 5005:5005 -n cbrain-test

4. IDE连接
shell
1. 打开IDE
2. 创建一个 remote JVM Debug 配置
3. 设置参数连接 host:localhost, port: 16005 ## 这里的16005是第3步里面映射端口
4. 点击IDE的debug按钮
案例:

5. 业务端口转发
!!! 注意:
同第3步,区别是:第3步为调试端口转发,这里是业务端口转发。两个端口转发都需要保持开启。
kubectl port-forward 30089:30088 -n
这建立了第二个隧道,将所有发送到本地 30089 端口的 HTTP 请求转发到远程 Pod 的 30088 业务端口。
案例:
kubectl port-forward cbrain-sipoc-build-76c44cc498-xm9q4 30089:30088 -n cbrain-test

6. 本地发起请求
使用postman或者HTTP文件即可