docker啟動後無法存取的解決方案:1、執行「docker run -itd -p」指令;2、輸入「docker ps -a」查看「ports」;3、檢查linux版本和docker版本;4、輸入「yum update」命令列升級核心;5、重啟核心即可。
本教學操作環境: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
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這一行出現了內容
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連接埠映射是否成功,還有linux核心版本和docker版本是否相容,如果不相容有兩種方法,要么降低docker版本(卸載高版本重裝)要嘛升級linux核心版本,升級完別忘了重啟宿主機。
完結撒花~~~
推薦學習:《docker影片教學》
以上是docker啟動後無法存取怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!

使用Docker的原因是它提供高效、便攜且一致的環境來打包、分發和運行應用程序。 1)Docker是一種容器化平台,允許開發者將應用程序及其依賴項打包到輕量級、可移植的容器中。 2)它基於Linux容器技術和聯合文件系統,確保快速啟動和高效運行。 3)Docker支持多階段構建,優化鏡像大小和部署速度。 4)使用Docker可以簡化開發和部署流程,提高效率並確保跨環境的一致性。

Docker在實際項目中的應用場景包括簡化部署、管理多容器應用和性能優化。 1.Docker簡化了應用部署,如使用Dockerfile部署Node.js應用。 2.DockerCompose管理多容器應用,如微服務架構中的Web和數據庫服務。 3.性能優化使用多階段構建減小鏡像大小,並通過健康檢查監控容器狀態。

在小型項目或開發環境中選擇Docker,在大型項目或生產環境中選擇Kubernetes。 1.Docker適合快速迭代和測試,2.Kubernetes提供強大的容器編排能力,適合管理和擴展大型應用。

Docker在Linux上重要,因為Linux是其原生平台,提供了豐富的工具和社區支持。 1.安裝Docker:使用sudoapt-getupdate和sudoapt-getinstalldocker-cedocker-ce-clicontainerd.io。 2.創建和管理容器:使用dockerrun命令,如dockerrun-d--namemynginx-p80:80nginx。 3.編寫Dockerfile:優化鏡像大小,使用多階段構建。 4.優化和調試:使用dockerlogs和dockerex

Docker是容器化工具,Kubernetes是容器編排工具。 1.Docker打包應用及其依賴成容器,可在任何支持Docker的環境中運行。 2.Kubernetes管理這些容器,實現自動化部署、擴展和管理,使應用高效運行。

Docker的目的是簡化應用部署,通過容器化技術確保應用在不同環境中一致運行。 1)Docker通過將應用和依賴打包到容器中,解決了環境差異問題。 2)使用Dockerfile創建鏡像,確保應用在任何地方一致運行。 3)Docker的工作原理基於鏡像和容器,利用Linux內核的命名空間和控制組實現隔離和資源管理。 4)基本用法包括從DockerHub拉取並運行鏡像,高級用法涉及使用DockerCompose管理多容器應用。 5)常見錯誤如鏡像構建失敗和容器無法啟動,可通過日誌和網絡配置調試。 6)性能優化建

在Ubuntu、CentOS和Debian上安裝和使用Docker的方法各有不同。 1)Ubuntu:使用apt包管理器,命令為sudoapt-getupdate&&sudoapt-getinstalldocker.io。 2)CentOS:使用yum包管理器,需添加Docker倉庫,命令為sudoyuminstall-yyum-utils&&sudoyum-config-manager--add-repohttps://download.docker.com/lin

在Linux上使用Docker可以提高開發效率和簡化應用部署。 1)拉取Ubuntu鏡像:dockerpullubuntu。 2)運行Ubuntu容器:dockerrun-itubuntu/bin/bash。 3)創建包含nginx的Dockerfile:FROMubuntu;RUNapt-getupdate&&apt-getinstall-ynginx;EXPOSE80。4)構建鏡像:dockerbuild-tmy-nginx.。 5)運行容器:dockerrun-d-p8080:80


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

MantisBT
Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器