04-20.eri-test GKE(Google K8S Engine)上的Intellij远程调试Java应用程序

Prepare the docker image

为了调试Java应用程序,我们需要向远程应用程序添加一些命令行参数。

  1. 在kubernetes部署有效负载中设置参数
DEBUG_OPTIONS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005"
  1. 将其传递给Dockerfile中的Java命令
ENTRYPOINT [ "sh", "-c", "java $DEBUG_OPTIONS -jar app.jar" ]

Expose the port 5005 in the GKE service

In GCP console, go to Kubernetes Engine -> Service & Ingress, choose your service and add the debug port:

ports:
  - name: http
    nodePort: 30060
    port: 80
    protocol: TCP
    targetPort: 8080
  - name: debug
    nodePort: 30080
    port: 5005
    protocol: TCP
    targetPort: 5005

Forward the pods ports to your localhost:5005

gcloud container clusters get-credentials ${CLUSTER_NAME} --region us-central1 --project ${PROJECT_NAME} \
 && kubectl port-forward --namespace ${NAMESPACE} $(kubectl get pod --namespace ${NAMESPACE} --selector="app=${APP}" --output jsonpath='{.items[0].metadata.name}') 5005:5005

您可以通过点击调试端口附近的“端口转发”按钮,从Google控制台生成此命令:

Alt Text

现在像往常一样从Intellij调试它
Alt Text

from: https://dev.to//brachiwernick/intelij-remote-debugging-java-app-in-gke-google-k8s-engine-4gh3

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值