宿主機(jī)無法訪問docker容器中nginx服務(wù)的問題解決
1.問題描述
在虛擬機(jī)中,部署好docker服務(wù),并且安裝了nginx。啟動之后,宿主機(jī)無發(fā)訪問容器中的nginx服務(wù),一直轉(zhuǎn)圈圈,但是虛擬機(jī)中使用 curl [虛擬機(jī)ip] 就可以訪問到nginx的啟動成功頁面。


2.問題解決
2.1查看端口號是否映射正確
這里Nginx是主機(jī)80端口映射到docker中的80端口

2.2檢查防火墻狀態(tài)
[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)
2.3需要進(jìn)入docker下正在運(yùn)行中的nginx容器內(nèi)部啟動nginx
[root@localhost ~]# docker exec -it nginx bash root@6fe8ede3eab4:/# service nginx start root@6fe8ede3eab4:/# service nginx status nginx is running.
2.4訪問成功

2.5如果還沒有訪問成功,有可能你在內(nèi)核優(yōu)化的時候 禁止ip轉(zhuǎn)發(fā)功能了
- Linux 默認(rèn)情況下是不開啟 ip 轉(zhuǎn)發(fā)功能的,與docker無關(guān)。
- 查看是否開啟轉(zhuǎn)發(fā):執(zhí)行以下命令,結(jié)果0為未開啟,1為開啟
[root@localhost ~]# cat /proc/sys/net/ipv4/ip_forward 0
- 配置linux內(nèi)核允許轉(zhuǎn)發(fā)
[root@localhost ~]# sysctl net.ipv4.conf.all.forwarding=1 net.ipv4.conf.all.forwarding = 1
這個允許ip轉(zhuǎn)發(fā)只是暫時的,重啟虛擬機(jī)后會失效
永久修改方法
[root@localhost ~]# vim /etc/sysctl.conf 找到 net.ipv4.conf.all.forwarding = 0 把0修改成1即可 vim模式下 :/net.ipv4.ip_forward [root@localhost ~]# sysctl -p /etc/sysctl.conf ----- [root@localhost ~]# systemctl restart network
之后你會神奇的發(fā)現(xiàn)宿主機(jī)可以訪問了!

到此這篇關(guān)于宿主機(jī)無法訪問docker容器中nginx服務(wù)的問題解決的文章就介紹到這了,更多相關(guān)docker宿主機(jī)無法訪問nginx服務(wù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- docker容器訪問宿主機(jī)host設(shè)置的域名方式
- docker容器無法訪問外網(wǎng),但是宿主機(jī)卻可以的問題
- Docker容器如何訪問宿主機(jī)的Mysql數(shù)據(jù)庫
- docker從容器中訪問到宿主機(jī)3種方法
- Docker如何訪問到宿主機(jī)MYSQL的實(shí)現(xiàn)方法
- Docker容器與宿主機(jī)相互訪問更方便的方法
- docker內(nèi)服務(wù)訪問宿主機(jī)服務(wù)的實(shí)現(xiàn)
- docker容器訪問宿主機(jī)的MySQL操作
- Docker內(nèi)如何訪問本機(jī)(宿主機(jī))的具體方法
- docker無法通過宿主機(jī)IP訪問容器內(nèi)服務(wù)的問題解決
相關(guān)文章
dockerfile構(gòu)建任意java鏡像的實(shí)現(xiàn)示例
本文主要介紹了dockerfile構(gòu)建任意java鏡像的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2025-09-09
Windows?Docker部署Kong網(wǎng)關(guān)的實(shí)現(xiàn)步驟
Kong是一個輕量級、快速、靈活的云原生API網(wǎng)關(guān),本文主要介紹了Windows?Docker部署Kong網(wǎng)關(guān)的實(shí)現(xiàn)步驟,具有一定的參考價值,感興趣的可以了解一下2024-03-03
docker容器間進(jìn)行數(shù)據(jù)共享的三種實(shí)現(xiàn)方式
本文主要介紹了docker容器間進(jìn)行數(shù)據(jù)共享的三種實(shí)現(xiàn)方式,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05
如何在 Ubuntu 下通過 Docker 部署 Caddy 
本文介紹了如何在Ubuntu系統(tǒng)下通過Docker部署Caddy服務(wù)器,首先安裝Docker,然后啟動Docker服務(wù)并設(shè)置為開機(jī)自啟,接著拉取Caddy鏡像,并創(chuàng)建一個Caddyfile配置文件,使用命令運(yùn)行Caddy容器,并將本地的Caddyfile掛載到容器內(nèi),感興趣的朋友跟隨小編一起看看吧2025-03-03
Docker與Kubernetes部署實(shí)戰(zhàn)之云原生應(yīng)用交付
Docker與Kubernetes是當(dāng)今云原生應(yīng)用開發(fā)與運(yùn)維體系中最為關(guān)鍵的兩大基礎(chǔ)設(shè)施技術(shù),尤其對Java開發(fā)者而言,這篇文章主要介紹了Docker與Kubernetes部署實(shí)戰(zhàn)之云原生應(yīng)用交付的相關(guān)資料,需要的朋友可以參考下2026-04-04
docker nginx 運(yùn)行后無法訪問的問題解決
這篇文章主要介紹了docker nginx 運(yùn)行后無法訪問的問題解決,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-09-09

