将桥接网络上的 Docker 容器 运行 连接到本地主机
Connecting Docker Container running on bridge network to Localhost
我在本地 运行ning localstack(AWS 模拟服务)作为 docker 容器。我有另一个应用程序试图连接到它,但收到连接被拒绝的错误,这两个都是 java 项目。我尝试使用的网络称为 serview,因此我 运行 localstack 具有以下
docker run --net=serview -d -p 4566-4597:4566-4597 --name=localstack -it localstack/localstack:latest
然后我 运行 我的其他应用程序也想像这样访问它
docker run --net=serview -it --name sample-publisher -p 1338:1338 --rm sample-publisher:latest
我收到的错误是
com.amazonaws.SdkClientException: Unable to execute HTTP request: Connect to localhost:4575 [localhost/127.0.0.1] failed: Connection refused (Connection refused)
运行 net=host 可以正常工作,但我想在 serview 网络上 运行 这可能吗?
当容器连接到公共网络时,您应该使用容器名称相互连接。容器名称是一个 DNS 名称,将通过公共网络解析为容器 IP。
我在本地 运行ning localstack(AWS 模拟服务)作为 docker 容器。我有另一个应用程序试图连接到它,但收到连接被拒绝的错误,这两个都是 java 项目。我尝试使用的网络称为 serview,因此我 运行 localstack 具有以下
docker run --net=serview -d -p 4566-4597:4566-4597 --name=localstack -it localstack/localstack:latest
然后我 运行 我的其他应用程序也想像这样访问它
docker run --net=serview -it --name sample-publisher -p 1338:1338 --rm sample-publisher:latest
我收到的错误是
com.amazonaws.SdkClientException: Unable to execute HTTP request: Connect to localhost:4575 [localhost/127.0.0.1] failed: Connection refused (Connection refused)
运行 net=host 可以正常工作,但我想在 serview 网络上 运行 这可能吗?
当容器连接到公共网络时,您应该使用容器名称相互连接。容器名称是一个 DNS 名称,将通过公共网络解析为容器 IP。