问题描述
程序运行后启动了一个http监听,监听地址为localhost:3001,本地用postman调试成功。将程序打包成docker镜像,容器化运行访问不到。
原因
容器中的localhost和本机的localhost不同,需要用其他ip地址来监听这个http请求。并且这个地址不是固定的,在pod重启后这个IP地址可能发生变化。
解决办法
将程序中的http监听地址改为0.0.0.0:3001,然后重新打包镜像运行,这样能监听所有IP的3001端口。
程序运行后启动了一个http监听,监听地址为localhost:3001,本地用postman调试成功。将程序打包成docker镜像,容器化运行访问不到。
容器中的localhost和本机的localhost不同,需要用其他ip地址来监听这个http请求。并且这个地址不是固定的,在pod重启后这个IP地址可能发生变化。
将程序中的http监听地址改为0.0.0.0:3001,然后重新打包镜像运行,这样能监听所有IP的3001端口。