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

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

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

第一步: idea通过ssh连接docker

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

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

在这里插入图片描述
在这里插入图片描述

  • 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"]

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 看日志
    在这里插入图片描述

第三步: 远程debug

在这里插入图片描述

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

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 您可以使用DockerSSH连接功能来启动Docker。您需要在docker run命令添加一些参数,并在主机上启动SSH服务,然后您就可以连接Docker容器了。具体的启动命令可以参考Docker的文档。 ### 回答2: 为了通过SSH远程连接到运行Alpine Linux的Docker容器,你需要按照以下步骤进行设置和启动Docker: 1. 在Dockerfile添加SSH相关的安装和配置命令。在Dockerfile,你可以使用Alpine Linux镜像的基本文件系统。你可以使用以下命令安装和设置SSH服务: ``` RUN apk add --no-cache openssh RUN ssh-keygen -A RUN echo 'root:password' | chpasswd RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config ``` 2. 构建Docker镜像:使用docker build命令来构建包含SSH的自定义Alpine Linux镜像。假设你的Dockerfile位于当前工作目录,可以运行以下命令来构建镜像: ``` docker build -t alpine-ssh . ``` 3. 启动Docker容器并映射SSH端口:现在你可以通过运行以下命令启动容器,并将容器的SSH端口映射到主机的某个端口: ``` docker run -d -p 2222:22 alpine-ssh ``` 这将启动一个名为alpine-ssh的容器,并将容器的SSH端口22映射到主机的端口2222。 4. 通过SSH连接Docker容器:使用SSH客户端程序连接到容器的SSH端口。在命令行运行以下命令: ``` ssh root@localhost -p 2222 ``` 这将通过SSH连接Docker容器。你可以使用容器的IP地址或者容器所在主机的IP地址进行远程连接。 以上是通过SSH远程连接到Alpine Linux Docker容器的基本步骤。你可以根据你的实际需求自定义SSH设置和Docker镜像。 ### 回答3: 要通过SSH远程连接Docker的Alpine Linux,首先需要确保已在Alpine Linux安装和启动SSH服务。以下是启动Docker容器时需要采取的步骤: 1. 在主机上安装Docker,并确保已将Docker服务启动起来。 2. 在主机上创建一个Dockerfile,用于构建Alpine Linux的Docker镜像。例如,可以使用以下内容创建Dockerfile: ``` FROM alpine:latest RUN apk update && apk add openssh RUN ssh-keygen -A RUN echo "root:password" | chpasswd CMD ["sh", "-c", "/usr/sbin/sshd -D"] ``` 这将基于最新的Alpine Linux镜像创建一个新的Docker镜像,并在其安装openssh软件包。 3. 使用以下命令构建Docker镜像: ``` docker build -t alpine-ssh . ``` 4. 构建完成后,可以使用以下命令启动一个新的Docker容器: ``` docker run -d -p 2222:22 --name myalpine alpine-ssh ``` 这将在Docker容器运行Alpine Linux,为容器分配了一个名称为"myalpine",并将容器SSH服务映射到主机的端口2222。 5. 现在,您可以使用SSH客户端连接到主机的IP地址和端口2222,并使用root用户进行身份验证。例如,可以使用以下命令连接Docker容器: ``` ssh root@<主机IP地址> -p 2222 ``` 您需要将"<主机IP地址>"替换为运行Docker容器的主机的实际IP地址。 这样,您就可以通过SSH远程连接到运行Alpine Linux的Docker容器了。请记住,在真实的生产环境,请确保将密码更改为更安全的选项,并采取其他安全措施来保护您的系统。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

随猿Fa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值