前言
- 相信有不少Javaer的代码在本地跑没一点问题,但是部署到服务器上就会出翔莫名其妙的bug,为了看bug的原因只能通过日志的形式来实现,下边为各位Javaer提供另一种方法,通过IDEA的功能能够直接debug服务器上的代码,话不多说,上步骤
- 本文是通过maven打包springboot项目之后上传到服务器,通过docker运行,具体步骤请点击 使用docker运行jar包,启动SpringBoot项目 ,按照这个上传完整,能够通过浏览器访问之后,再通过下边的配置就可以使用IDEA远程debug代码了
- 修改docker-compose.yml的配置,加入开启远程debug的命里(Dockerfile不需要修改)
version:'3.8'services:te:build:.image:tecontainer_name:teenvironment:# 启用远程调试(开发时临时加)-JAVA_TOOL_OPTIONS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:8082-JAVA_OPTS=-Xms64m-Xmx192m-XX:MetaspaceSize=48m-XX:MaxMetaspaceSize=96m-XX:+UseG1GC-Djava.security.egd=file:/dev/./urandom-XX:+TieredCompilation-XX:TieredStopAtLevel=1-XX:CICompilerCount=2mem_limit:350mmem_reservation:200mports:-"8081:8081"# 暴漏端口,别忘了服务器上的该端口也要暴漏-"8082:8082"restart:unless-stopped重新运行
- 停止原有的镜像,重新编译、启动(需要在和docker-compose.yml同级中执行下边的命令,运行ls能看到docker-compose.yml)
[root@VM-16-7-centos te]# ls docker-compose.ymlDockerfilelog testlog travelecho.cloud.jks travel-echo.jar- 停止原镜像
docker-compose down- 重新打包
docker-compose up-d--build配置IDEA
第一步
第二步
第三部
结果
山不见我,我自去见山