gpt4 book ai didi

java - docker 容器内的 Spring 启动抛出 java.net.ConnectException : Connection refused (Connection refused)

转载 作者:行者123 更新时间:2023-12-02 10:52:38 28 4
gpt4 key购买 nike

客户端应用程序将 json 数据发送到 localhost:8080 上的服务器,该数据打包并作为 Docker 镜像运行。使用 Postman chrome 应用程序手动发送 json 时,服务器工作正常。问题在于,当尝试将 json 写入 时,dockerized client 会抛出 java.net.ConnectException:连接被拒绝(连接被拒绝)使用 OutputStreamWriter 的 HttpURLConnection。如何让它发挥作用?

Dockerfile:

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ARG JAR_FILE=target/client-0.0.1-SNAPSHOT.jar
COPY ${JAR_FILE} app.jar
EXPOSE 8088
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

最佳答案

两个客户端应在同一网络上运行。因此创建一个网桥MY_BRIDGE:

docker network create MY_BRIDGE

运行时将两个容器附加到桥上。为服务器容器命名MY_SERVER:

docker run --network MY_BRIDGE --name MY_SERVER MY_SERVER_IMAGE

docker run --network MY_BRIDGE MY_CLIENT_IMAGE

在运行客户端容器之前,您的应用程序代码必须从 localhost:8080 更改为 MY_SERVER:8080

参见Docker Bridge Documentation

关于java - docker 容器内的 Spring 启动抛出 java.net.ConnectException : Connection refused (Connection refused),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52046211/

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