idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug

idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug

容器运行的好处是减轻本地运行的负担(本地电脑只负责应用打包)和可以将一些应用依赖的第三方软件安装到容器中,本地电脑无需安装(减少本地电脑安装一大堆乱七八糟的软件,例如Java应用需要在线看office文档,需要依赖的office套件等)

第一步: idea通过ssh连接docker



第二步:使用Dockerfile文件在远程启动应用


  • Dockerfile文件内容(war包)
bash 复制代码
# 这个镜像可以自行选择,例如,有些应用需要office依赖等,但又不想再自己电脑上装,即可通过将依赖都安装到容器中的方式,去运行应用,再配合远程debug,即可实现几乎无感的远程开发
FROM tomcat:jre8-alpine
WORKDIR /usr/local/tomcat

ENV CATALINA_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=28080"

RUN rm -rf webapps/*
ADD ./target/*.war webapps/app.war
EXPOSE 8080
  • Dockerfile文件内容(jar包)
bash 复制代码
FROM openjdk:17-jdk-slim

WORKDIR /data

COPY build/libs/*.jar /data/app.jar

ENTRYPOINT ["java","-Xms512m","-Xmx4096m","-XX:+UseG1GC","-jar","-Duser.language=zh","/data/app.jar"]



  • 看日志

第三步: 远程debug

至此,即可调用接口,idea进行debug了

相关推荐
AscendKing3 小时前
Docker Compose 一键部署 SkyWalking 10.2.0 + Elasticsearch8.11,分布式链路追踪完整实战
elasticsearch·docker·skywalking·链路追踪·微服务监控
励志师code3 小时前
Kubernetes 集群节点生命周期管理实战:从扩容、调度管控到证书续期
运维·docker·容器·kubernetes·gpu算力·kubelet
木雷坞4 小时前
Docker Compose部署Metabase:应用库隔离与日期筛选看板
运维·docker·容器
怒放的生命19914 小时前
前端项目 Docker 打包实操指南
前端·docker·容器
tedcloud1234 小时前
Docker Compose 部署 Immich:手机照片自动备份与常见故障排查
运维·前端·docker·容器·智能手机·开源·流程图
古城小栈4 小时前
Docker Compose 云原生的底座
docker·云原生·容器
卜锦元5 小时前
Docker Compose 部署 Nginx 1.30.6 完整指南
nginx·docker·容器
xrlfreedom6 小时前
MCP 面试高频考点:把知识库 RAG 检索封装为 Tool,Docker 与结构化输出怎么配合不踩坑
docker·结构化输出·mcp
刘胡子大叔7 小时前
Docker 容器名 ping 不通
运维·docker·容器
a5986527 小时前
Docker多开云手机,六边云独立端口隔离访问实战
android·运维·docker·容器·智能手机·云手机