首頁  >  文章  >  運維  >  docker啟動後無法存取怎麼辦

docker啟動後無法存取怎麼辦

藏色散人
藏色散人原創
2022-11-28 09:40:5710597瀏覽

docker啟動後無法存取的解決方案:1、執行「docker run -itd -p」指令;2、輸入「docker ps -a」查看「ports」;3、檢查linux版本和docker版本;4、輸入「yum update」命令列升級核心;5、重啟核心即可。

docker啟動後無法存取怎麼辦

本教學操作環境:Windows7系統、Docker 20.10.11版、Dell G3電腦。

docker啟動後無法存取怎麼辦?

Docker容器啟動成功瀏覽器卻無法存取(Docker容器啟動後查看docker ps -a 看不到ports(ports欄為空)| linux核心版本和docker版本不相容)

場景:Docker容器啟動成功瀏覽器卻無法存取

初學Docker容器的基本操作,拉取了tomcat鏡像,輸入運行容器命令運行容器一系列操作都沒有問題,但是在瀏覽器存取連接埠時卻存取不到

[root@localhost ~]# docker run -d -p 8081:8080 --name mytomcat b8dfe9ade316

docker啟動後無法存取怎麼辦

1、Docker容器啟動後查看docker ps -a 看不到ports(ports欄為空)

#各種命令列試探,終於在輸入了顯示所有的容器資訊指令,發現ports那一行是空的! ! !

[root@localhost ~]#  docker ps -a

然後我不知道要找什麼關鍵字來形容這種情況,嘗試了各種方法,比如說​​卸載重裝舊版本的tomcat、關閉防火牆,還有設置防火牆放行或限制指定IP和連接埠(firewall)都不行,甚至還格式化輸出顯示指定列還是看不到ports,幾經週轉最後終於找到了Jacen_Chou博主的方法嘗試了一下,成功了! ! !謝謝Jacen_Chou博主的幫助,我的心情就像博主最後說的那句話一樣,看到成功的那一刻,激動得差點哭了嗚嗚嗚

博主說只要在-d前面加上it即可,我也終於知道原來這種情況叫Docker端口映射不起作用

[root@localhost ~]# docker run -itd -p 8081:8080 --name mytomcat b8dfe9ade316

再輸入docker ps -a,終於看到了ports這一行出現了內容

docker啟動後無法存取怎麼辦

2、linux核心版本和docker版本不相容

我以為問題已經解決了,按道理來說沒問題了,興高采烈的詠打開瀏覽器,還是不可以5555,又繼續找原因,回歸到最原始的關鍵字,docker容器啟動成功卻無法訪問,在一頓查找後看到清人博主說可能是linux系統內核低,而docker版本是最新版所以不相容。

我趕緊查看了自己的linux版本和docker版本,結果真的是這樣,我的docker是20.10.11版本,而linux只有3.8,好傢伙搞了半天原來是版本不相容的問題,趕緊輸入yum update命令列升級核心

#查看linux内核版本
[root@localhost ~]# uname -sr
#查看docker版本
[root@localhost ~]# docker version
#升级linux内核版本,升级所有包同时也升级软件和系统内核
[root@localhost ~]# yum update -y

漫長的升級等待,建議大家去搜一下怎麼升級大版本的linux核心版本,因為yum update只適合小版本升級,升級大版本步驟挺多的我就懶得試了。

最後別忘了升級後重啟centos,重啟容器

最後的最後,終於看到了我那該死的湯姆貓~~

docker啟動後無法存取怎麼辦

解決方案:

查看Docker連接埠映射是否成功,還有linux核心版本和docker版本是否相容,如果不相容有兩種方法,要么降低docker版本(卸載高版本重裝)要嘛升級linux核心版本,升級完別忘了重啟宿主機。

完結撒花~~~

推薦學習:《docker影片教學

以上是docker啟動後無法存取怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn