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

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

    • 第一步: idea通过ssh连接docker
    • 第二步:使用Dockerfile文件在远程启动应用
    • 第三步: 远程debug

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

第一步: idea通过ssh连接docker

idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第1张图片
idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第2张图片

idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第3张图片
idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第4张图片

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

idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第5张图片
idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第6张图片

  • Dockerfile文件内容(war包)
# 这个镜像可以自行选择,例如,有些应用需要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包)
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"]

idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第7张图片
idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第8张图片
在这里插入图片描述

  • 看日志
    idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第9张图片

第三步: 远程debug

idea使用ssh连接docker,并通过Dockerfile文件,直接在idea中启动docker应用,并进行远程debug_第10张图片

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

你可能感兴趣的:(docker,部署,intellij-idea,ssh,docker)