nginx掛載宿主機后,網頁無法訪問
nginx掛載宿主機后,網頁無法訪問 (本內容承接上篇文章----https://www.cnblogs.com/jouncy/p/16166122.html)
一層層的查看開放端口(docker容器、宿主機)
1.查看nginx端口是否開放,在nginx容器中是訪問是哪個端口號
(1)進入到nginx容器內,80端口可訪問網頁
# docker exec -it 容器名稱/容器id bash --(進入nginx容器)
# cat /etc/issue --(查看docker中nginx在什么系統中運行的)
# service --status-all --(查看所有服務)
# curl 127.0.0.1:80 --(在nginx容器內部可以訪問網站,只是網站提示404 NOT Found)
# cd /usr/share/nginx/html --(進入容器中網頁存儲目錄)
# cd ls --(顯示,無任何內容,所以curl網址,會提示404錯誤)
[root@localhost conf]# docker exec -it 42 bash
root@4259c37bae01:/# cat /etc/issue
Debian GNU/Linux 11 \n \l
root@4259c37bae01:/# service --status-all
[ ? ] hwclock.sh
[ + ] nginx
[ + ] nginx-debug
root@4259c37bae01:/# curl 127.0.0.1:80
<html>
<head><title>403 Forbidden</title></head>
<body>
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx/1.21.6</center>
</body>
</html>
root@4259c37bae01:/# cd /usr/share/nginx/html/
root@4259c37bae01:/usr/share/nginx/html# ll
bash: ll: command not found
(2)網頁端口80,修改配置改成8192,網頁80端口顯示404異常,nginx掛載到宿主機,可在對應宿主機上新建網頁、修改配置文件
# service nginx stop --(在容器內關閉nginx服務,也可不進入容器,在docker中,用:docker start 42關閉id是42的nginx服務)
# exit --(退出nginx容器,關閉容器服務后會自動退出容器)
# cd /home/dockers/nginx/conf --(切換到宿主機配置文件目錄)
# vi default.conf --(編輯修改配置文件,將listen中80改成8192)
# docker start 42 --(重啟42號nginx服務)
# docker exec -it 42 bash --(進入到nginx容器)
# curl 127.0.0.1:8192 --(訪問nginx頁面,8192端口可以正常訪問了,只是缺少頁面,返回404錯誤)
# exit --(退出容器)
# curl 127.0.0.1:8192 --(在宿主機上也可正常訪問8192端口頁面)
# vi /home/dockers/nginx/html/index.html --(在掛在宿主機上新建網頁,解決訪問網頁404錯誤)
# curl 127.0.0.1:8192 --(再次查看,可正常訪問)
(3)IE還是無法正常訪問網址(內網環境,走代理,要設置例外)
(4)IE終於可以正常訪問了