docker telnet不通的解決方法:1、檢視設定檔;2、修改nginx設定檔的連接埠為80;3、重新載入即可。
本文操作環境:centOS6.8系統、Docker 18.09.x版、Dell G3電腦。
如何解決docker telnet不通的問題?
docker容器啟動後,telnet連接埠不通的問題
今天使用docker部署nginx,部署完畢後,檢視容器已經啟動了。這時發現telnet埠卻不通,而且是telnet本地IP都不通,直接r報Connection refused,使用127.0.0.1 telnet,雖然是通的,但有問題,報Connection closed by foreign host.目前終於解決了,說下處理思路。
docker network inspect bridge #查看容器的IP为 172.17.0.2
curl 容器IP 80端口,拒絕連接,curl容器IP 宿主機端口8090,盡然正常返回。如下圖
很奇怪,不應該啊,因為查看容器進程會發現,8090是宿主機端口,而80端口才是容器端口
最後,查看設定檔發現,nginx設定檔的連接埠不是80,而寫成了8090,修改nginx設定檔的端為80後,重新加新,telnet埠不通的問題就解決了。
建議,在啟動容器時,宿主機的連接埠和容器連接埠最好一致了。
在使用DOCKER時,iptables -F 指令慎用,該指令會清空防火牆規則,而容器與宿主機通信,預設是會在iptables裡寫規則的。
推薦學習:《docker影片教學》
以上是如何解決docker telnet不通的問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!