Docker部署Nginx并配置反向代理
準(zhǔn)備工作
在docker內(nèi)部署任何應(yīng)用,都需要先下載對(duì)應(yīng)的鏡像;下載鏡像之前,需要先搜索鏡像來(lái)確認(rèn)該鏡像是否存在:
docker search nginx
從列表可以看到,docker已經(jīng)有了nginx的鏡像,名稱(chēng)是“nginx”,接下來(lái)下載鏡像:
docker pull nginx
下載完成后,查看一下本地鏡像:
如果在列表中看到nginx,鏡像下載就已經(jīng)成功了。
容器設(shè)置
在docker中,真正運(yùn)行的是容器,鏡像在我理解中是一種環(huán)境。我們?cè)谥付ǖ溺R像中運(yùn)行某個(gè)容器,然后編輯和配置這個(gè)容器,從而達(dá)到想要的效果。使用以下命令運(yùn)行一個(gè)nginx容器:
docker run -d -it -p 80:80 --name nginx01 nginx
解釋一下
- -d:代表后臺(tái)運(yùn)行,并返回容器的ID;
- -it:是一個(gè)組合命令,可以使容器在運(yùn)行時(shí)不會(huì)阻塞當(dāng)前操作界面。(另一種寫(xiě)法是 -i -t );
- -p 80:80:將宿主機(jī)上的端口映射到容器端口;
- --name nginx01:自定義容器名稱(chēng)為nginx01;
最后的nginx:鏡像的名稱(chēng)。
這行命令的結(jié)果是在nginx鏡像中運(yùn)行了一個(gè)名為nginx01的容器。接下來(lái)看一下容器有沒(méi)有正常運(yùn)行:
看到STATUS那一欄是Up開(kāi)頭就代表啟動(dòng)成功了。因?yàn)樯弦徊讲僮饕呀?jīng)做好了端口映射,所以我們可以本地訪問(wèn)nginx。訪問(wèn)127.0.0.1:
看到了nginx的默認(rèn)頁(yè)面,表示docker下的nginx已經(jīng)成功跑起來(lái)了。
Docker下Nginx的反向代理
如果想讓網(wǎng)站通過(guò)域名訪問(wèn),那就需要nginx反向代理。設(shè)置的方法很簡(jiǎn)單,首先進(jìn)入剛才的nginx01容器:
docker exec -it nginx01 bash
nginx反向代理通過(guò)修改配置文件即可完成,目錄是etc/nginx/conf.d:
目錄下的default.conf是一個(gè)默認(rèn)的配置模板,按照里面的規(guī)則進(jìn)行自己的配置即可:
修改完成后重啟容器生效。如果是linux系統(tǒng),可以直接vi來(lái)修改文件內(nèi)容以完成配置,如果想在win系統(tǒng)完成nginx的反向代理,可以下載cmd可用的vim編輯器,也可以設(shè)置資料卷來(lái)解決,后面幾篇文章會(huì)詳述資料卷。
到此這篇關(guān)于Docker部署Nginx并配置反向代理的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Docker本地鏡像推送到阿里云的實(shí)現(xiàn)
本文介紹了在阿里云上創(chuàng)建容器鏡像服務(wù)實(shí)例,并將本地鏡像推送到阿里云的鏡像倉(cāng)庫(kù),具有一定的參考價(jià)值,感興趣的可以了解一下2024-12-12關(guān)于Dockerfile鏡像制作完整實(shí)例
本文詳細(xì)介紹了如何使用Docker制作鏡像,并通過(guò)實(shí)際應(yīng)用發(fā)版展示了制作過(guò)程,主要內(nèi)容包括創(chuàng)建和啟動(dòng)Docker容器的腳本(init.sh、start.sh、stop.sh、restart.sh),以及配置目錄,文章還討論了Docker容器IP地址的作用,并總結(jié)了制作新鏡像的基本步驟2024-11-11淺談docker compose書(shū)寫(xiě)規(guī)則
這篇文章主要介紹了淺談docker compose書(shū)寫(xiě)規(guī)則,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05