(三)Docker使用(3)——在容器中部署靜態(tài)頁(yè)面

Docker官網(wǎng)

Docker文檔地址


想在容器中部署靜態(tài)頁(yè)面需要做一些準(zhǔn)備工作,正常的網(wǎng)頁(yè)服務(wù)運(yùn)行都是通過(guò)80端口進(jìn)行訪問(wèn)。

本節(jié)內(nèi)容:設(shè)置容器的端口映射,開(kāi)啟80端口、在容器中部署Nginx服務(wù),訪問(wèn)測(cè)試、關(guān)閉容器重啟docker和Nginx服務(wù)。


設(shè)置容器的端口映射,開(kāi)啟80端口:

? ? 通過(guò)docker run [-P] [-p]命令可以開(kāi)啟端口映射。

? ? ? ? -P --publish-all=true|false 默認(rèn)為false? ? ? ? 暴露容器的所有端口。

? ? ? ? -p --publish=[]? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?暴露容器的部分端口,需指端口號(hào)。

? ? 例如{ docker run --name=test -P -i -t ubuntu /bin/bash } 啟動(dòng)一個(gè) 暴露所有端口的 的容器。

? ? 例如{ docker run --name=test -p 80 -i -t ubuntu /bin/bash } 啟動(dòng)一個(gè) 暴露80端口的 的容器。

? ? 例如{ docker run --name=test -P 8080:80 -i -t ubuntu /bin/bash } 啟動(dòng)一個(gè) 暴露80端口的 的容器,并且將容器80端口映射到宿主機(jī)8080端口。

? ? 例如{ docker run --name=test -P -i 0.0.0.0:80 -t ubuntu /bin/bash } 啟動(dòng)一個(gè) 指定IP,暴露80端口 的容器。

? ? 例如{ docker run --name=test -P -i 0.0.0.0:8080:80 -t ubuntu /bin/bash } 啟動(dòng)一個(gè) 指定IP,暴露80端口 的容器,并且將容器80端口映射到宿主機(jī)的8080端口。

在容器中部署Nginx服務(wù),訪問(wèn)測(cè)試:

? ??1.創(chuàng)建映射80端口的交互式容器:

? ? ? ? 使用{ docker run --name=web -p 80 -i -t ubuntu /bin/bash }命令創(chuàng)建。

????2.安裝Nginx:

? ? ? ? { apt-get update }

? ? ? ? { apt-get upgrade }

? ? ? ? { apt-get install -y nginx }

????3.安裝文本編輯器Vim:

? ? ? ? { apt-get install vim }

????4.創(chuàng)建一個(gè)靜態(tài)頁(yè)面:?

?????????{ mkdir -p /var/www/html } 創(chuàng)建一個(gè)存放靜態(tài)頁(yè)面的文件夾。?

?????????{ cd /var/www/html } 進(jìn)入到創(chuàng)建的文件夾中。?

?????????{ vim index.html } 使用vim創(chuàng)建一個(gè)index.html文件。?

?????????隨便寫(xiě)一點(diǎn)HTML代碼

? ? ????????<html>

? ? ? ? ? ? ????<head>

? ? ? ? ? ? ? ? ????<title>Test Page</title>

? ? ? ? ? ? ????</head>

? ? ? ? ? ? ????<body>

? ? ? ? ? ? ? ? ????<h1> Just Test. </h1>

????????????????</body>

????????????</html>

????????保存,退出。

????5.修改Nginx配置文件:

? ? ? ? { whereis nginx } 查找一個(gè)nginx的安裝目錄。

? ? ? ? { ls /etc/nginx/sites-enabled } 查看nginx的配置文件位置。

? ? ? ? { vim default } 打開(kāi)配置文件進(jìn)行編輯,更改root的路徑為剛才創(chuàng)建的文件夾路徑。

????6.運(yùn)行Nginx:

? ? ? ? { nginx } 啟動(dòng)nginx服務(wù)。

? ? ? ? { ps -ef } 查看容器中運(yùn)行的進(jìn)程,確保nginx服務(wù)已經(jīng)開(kāi)啟。

? ? ? ? 使用ctrl+P和ctrl+Q將容器設(shè)置為后臺(tái)運(yùn)行。

? ? ? ? { docker ps } 可以看到正在運(yùn)行的容器列表。


? ? ? ? { docker port web } 可以看到web容器中的端口映射情況。


? ? ? ? { docker top web } 可以看到web容器中進(jìn)程的運(yùn)行情況。


????7.測(cè)試網(wǎng)站訪問(wèn):

? ? ? ?7.1 { curl http://127.0.0.1:32769 } 命令可以看到之前寫(xiě)的HTML代碼,此時(shí)在容器中部署Nginx服務(wù)正常運(yùn)行。


? ? ? ? 7.2 也可以在瀏覽器中訪問(wèn),可以看到頁(yè)面正常顯示。

? ? ? ? 7.3 同時(shí)也可以使用容器的IP地址進(jìn)行訪問(wèn)。

? ? ? ? ? ? { docker inspect web } 查看web容器的具體信息。


? ? ? ? ? ? { curl http://172.17.0.2 } 此時(shí)就可以訪問(wèn)到了,不需要端口號(hào),因?yàn)槟J(rèn)是80端口。

????????7.4 也可以在瀏覽器中訪問(wèn)http://172.17.0.2,可以看到頁(yè)面正常顯示。

關(guān)閉容器重啟docker和Nginx服務(wù):

????使用{ docker stop web } 關(guān)閉容器。

? ? 使用{ docker start -i web} 再次開(kāi)啟容器。

? ? 在容器中使用 { ps -ef } 命令查看當(dāng)前開(kāi)啟的進(jìn)程,發(fā)現(xiàn)nginx服務(wù)并沒(méi)有啟動(dòng)。

? ? 使用ctrl+P和ctrl+Q將容器設(shè)置為后臺(tái)運(yùn)行。

????使用{ docker exec web nginx } 啟動(dòng)nginx服務(wù)。

? ? 使用{ docker top web } 可以看到nginx服務(wù)已經(jīng)啟動(dòng),此時(shí)可以用 http://172.17.0.2 或者 http://127.0.0.1:32769 可能不會(huì)再次訪問(wèn)到靜態(tài)頁(yè)面。

? ? 原因是IP地址可能改變,映射端口也可能改變,可以使用{ docker inspect web }命令再次查看IP地址和映射端口。

? ? 也就是說(shuō)當(dāng)容器停止后重啟時(shí),容器的IP地址和端口映射都會(huì)發(fā)生改變。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 轉(zhuǎn)載自 http://blog.opskumu.com/docker.html 一、Docker 簡(jiǎn)介 Docke...
    極客圈閱讀 10,728評(píng)論 0 120
  • 五、Docker 端口映射 無(wú)論如何,這些 ip 是基于本地系統(tǒng)的并且容器的端口非本地主機(jī)是訪問(wèn)不到的。此外,除了...
    R_X閱讀 1,954評(píng)論 0 7
  • 目錄前情回顧:上一章主要講述了梅姐姐的前世今生,以及她與一鳴的愛(ài)情故事,至于梅姐姐后來(lái)如何成魔,一鳴又是如何成為了...
    清荷沐陽(yáng)閱讀 528評(píng)論 32 17
  • 夢(mèng)里 我要加油配得上啦(???????)
    佐倉(cāng)乃亞閱讀 284評(píng)論 2 0
  • 佛寶山 懸崖秋千 文:花樣年華 你于天地間, 架設(shè)一座巨大的秋千架, 一頭連著天和云, 一頭連著瀑布、溪流。 ...
    花熹cyp4290閱讀 674評(píng)論 0 4

友情鏈接更多精彩內(nèi)容