gpt4 book ai didi

docker - 在 docker 中调试 spring-boot 应用程序不起作用

转载 作者:行者123 更新时间:2023-12-02 18:02:14 25 4
gpt4 key购买 nike

我有一个在使用 Dockerfile 和 docker-compose.yml 文件设置的 docker 容器中运行的 Spring Boot 应用程序。我最近在 Java 命令中添加了 -agentlib:jdwp=transport=dt_socket,address=5050,server=y,suspend=n进入 Dockerfile 以启用调试。我已经公开了端口 5050 并将其映射到 docker-compose 文件中。
当我在容器上运行应用程序时,我开始通过 IntelliJ 进行调试并连接,但如果我设置了断点,则永远不会命中。现在我不确定我在这里做错了什么,因为远程调试器正在连接。我什至尝试更改设置 suspend=y这有效,即在我启动调试器之前服务器不会启动。

这是我所做的相关工作;

Dockerfile

FROM openjdk:8-alpine
WORKDIR /
EXPOSE 8000 5050
COPY target /
CMD java -agentlib:jdwp=transport=dt_socket,address=5050,server=y,suspend=n -jar /target/blockchain*.jar

docker-compose.yml
multichain-api:
build:
context: ./blockchain
networks:
- multichain-network
ports:
- "8000:8000"
- "5050:5050"
volumes:
- type: bind
source: ${PWD}/blockchain/target
target: /target
container_name: multichain-api

关于我哪里出错的任何想法?

最佳答案

您可能需要在地址参数中添加 0.0.0.0 或 *

  • 地址=0.0.0.0:5050
  • 地址=*:5050
  • 关于docker - 在 docker 中调试 spring-boot 应用程序不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52719225/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com