docker 无法通过宿主机ip去访问其他容器
时间: 2023-10-10 12:11:00
浏览: 356
默认情况下,Docker 容器之间是隔离的,它们只能通过容器 ID 或容器名称进行通信。如果您要通过宿主机 IP 地址访问其他容器,则需要使用 Docker 网络。
首先,您需要创建一个自定义的 Docker 网络:
docker network create mynetwork
然后,在运行容器时,使用 `--network` 选项将容器连接到该网络:
docker run --name container1 --network mynetwork image1
docker run --name container2 --network mynetwork image2
这样,容器1和容器2将能够互相访问,并且它们之间的通信将通过 Docker 网络进行。
要通过宿主机 IP 地址访问其他容器,需要使用容器名称或 ID 以及端口号。例如,如果您要访问容器1中运行的 Web 应用程序:
curl http://container1:80
或者,如果您要从宿主机中访问容器1中运行的 Web 应用程序:
curl http://localhost:8080
其中,8080 是宿主机上的端口号,该端口号映射到容器1中运行的 Web 应用程序的端口 80。
相关问题
docker容器通过ip和端口访问不到宿主机
当Docker容器通过IP和端口无法访问到宿主机,可能是以下几个原因导致的:
1. 宿主机防火墙配置:宿主机上的防火墙可能会阻止容器访问到宿主机。可以检查宿主机的防火墙规则,确保容器的访问被允许。
2. 端口映射配置:如果在创建容器时没有正确配置
windows宿主机访问docker容器ip无法ping通
最低
0.47元/天
开通会员,查看完整答案
成为会员后, 你将解锁
下载资源随意下
优质VIP博文免费学
优质文库回答免费看
C知道免费提问
付费资源9折优惠