前置条件:使用的阿里云轻量云服务器,ECS服务器应该也是类似的。
问题排查过程
排查linux服务器本身的防火墙是否开启,查看后是关闭的。
排查轻量云服务器的安全组是否将端口加入安全组,否则也是无法访问的,端口已加入安全组,可以排除这个问题。
通过tcping等端口ping工具,发现端口也是无法ping通。
通过在linux主机上去curl对应的端口,发现是可以通的。
问题解决
看了上述的配置,以及docker的状态都没什么问题,想到了docker的运行时间可能比较长了,索性就试了一下重启docker服务。
$ service docker restart
Redirecting to /bin/systemctl restart docker.service
docker 服务重启成功。
查看一下容器的状态。
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
20ed822e85ae nginx "/docker-entrypoint.…" 12 minutes ago Exited (0) 8 seconds ago mynginx
352de36c4280 615 "java -jar /app.jar" 36 hours ago Exited (143) 8 seconds ago amazing_neumann
启动nginx容器
docker start 20
因为不是执行docker run指令,因为之前已经挂载过容器了,这里相当于直接重启容器即可,其他不需要操作。
查看本地是否可以curl成功。
curl localhost
curl没有问题。文章来源:https://www.toymoban.com/news/detail-716948.html
再次通过公网ip加端口访问nginx容器。文章来源地址https://www.toymoban.com/news/detail-716948.html
到了这里,关于Docker 容器正常启动但通过ip加端口无法访问的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!