Windows宿主机无法通过IP访问Docker Desktop里的容器

通过docker子网固定容器IP
# 查看局域网
docker network list 
#自定义局域网
docker network create --subnet=172.168.0.0/16 mynet
# 查看详细信息
docker network inspect mynet
# 删除
docker network rm mynet

# 启动容器
docker run --network=mynet --ip=172.168.0.2 -p 6379:6379 --name redisNode1 -v D:/bingo/docker/redisNode1/etc/redis.conf:/etc/redis/redis.conf -v D:/bingo/docker/redisNode1/data:/data -d redis:5.0.0 redis-server /etc/redis/redis.conf
宿主机通过IP访问

修改网络适配器WSL
WSL网络适配器
Windows宿主机无法通过IP访问Docker Desktop里的容器_第1张图片

端口转发
# 添加端口转发
netsh interface portproxy add v4tov4 listenport=6380 listenaddress=172.168.0.3 connectport=6379 connectaddress=172.168.0.3

# 查看转发列表
netsh interface portproxy show all

# 删除转发规则
netsh interface portproxy delete v4tov4 listenaddress=172.168.0.3 listenport=6380

不行的话再管理员DOS窗口,172.168.0.0/16为docker子网网关。172.19.64.2为WSL地址

route add 172.168.0.0/16 mask 255.255.255.240 172.19.64.2 -p

你可能感兴趣的:(中间件,docker,windows,宿主机通过ip访问容器)