如何通過(guò)Docker容器創(chuàng)建一個(gè)Web服務(wù)器
Web服務(wù)器
Web服務(wù)器,一般指網(wǎng)站服務(wù)器,是駐留于因特網(wǎng)上某種類型計(jì)算機(jī)的程序。
Web服務(wù)器可以向?yàn)g覽器等Web客戶端提供文檔,也可以放置網(wǎng)站文件以供全世界瀏覽,或放置數(shù)據(jù)文件以供全世界下載。
Web服務(wù)器的主要功能是提供網(wǎng)上信息瀏覽服務(wù),它使用HTTP(超文本傳輸協(xié)議)與客戶機(jī)瀏覽器進(jìn)行信息交流。
Web服務(wù)器是一種被動(dòng)程序,只有當(dāng)Internet上運(yùn)行其他計(jì)算機(jī)中的瀏覽器發(fā)出請(qǐng)求時(shí),服務(wù)器才會(huì)響應(yīng)。
Web服務(wù)器不僅能夠存儲(chǔ)信息,還能在用戶通過(guò)Web瀏覽器提供的信息的基礎(chǔ)上運(yùn)行腳本和程序。
工作原理
當(dāng)Web瀏覽器(客戶端)連到服務(wù)器上并請(qǐng)求文件時(shí),服務(wù)器將處理該請(qǐng)求并將文件反饋到該瀏覽器上,附帶的信息會(huì)告訴瀏覽器如何查看該文件(即文件類型)。為了處理一個(gè)請(qǐng)求,Web服務(wù)器可以響應(yīng)一個(gè)靜態(tài)頁(yè)面或圖片,進(jìn)行頁(yè)面跳轉(zhuǎn),或者把動(dòng)態(tài)響應(yīng)的產(chǎn)生委托給一些其他的程序,例如CGI腳本、JSP(JavaServer Pages)腳本、servlets、ASP(Active Server Pages)腳本、服務(wù)器端(server-side)JavaScript,或者一些其他的服務(wù)器端技術(shù)。
Nginx
Nginx是一個(gè)高性能的HTTP和反向代理服務(wù)器,同時(shí)也提供了IMAP/POP3/SMTP服務(wù)。
Nginx由伊戈?duì)?middot;賽索耶夫?yàn)槎砹_斯訪問(wèn)量第二的Rambler.ru站點(diǎn)開(kāi)發(fā),其將源代碼以類BSD許可證的形式發(fā)布。Nginx因它的穩(wěn)定性、豐富的功能集、簡(jiǎn)單的配置文件和低系統(tǒng)資源的消耗而聞名。
Nginx是一款輕量級(jí)的Web服務(wù)器/反向代理服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器,在BSD-like協(xié)議下發(fā)行,特點(diǎn)是占有內(nèi)存少、并發(fā)能力強(qiáng),事實(shí)上Nginx的并發(fā)能力在同類型的網(wǎng)頁(yè)服務(wù)器中表現(xiàn)較好。
- HTTP服務(wù)器:Nginx可以作為靜態(tài)網(wǎng)頁(yè)和動(dòng)態(tài)網(wǎng)頁(yè)的容器,處理HTTP請(qǐng)求并返回響應(yīng)。
- 反向代理:Nginx可以將客戶端的請(qǐng)求轉(zhuǎn)發(fā)給內(nèi)部網(wǎng)絡(luò)上的其他服務(wù)器,同時(shí)保持客戶端與服務(wù)器的通信。
- 負(fù)載均衡:Nginx支持多種負(fù)載均衡策略,如輪詢、加權(quán)輪詢、IP哈希等,可以將請(qǐng)求分發(fā)到多個(gè)應(yīng)用服務(wù)器上,提高系統(tǒng)的性能和可靠性。
- 動(dòng)靜分離:為了加快網(wǎng)站的解析速度,Nginx可以通過(guò)配置實(shí)現(xiàn)動(dòng)靜分離,將靜態(tài)頁(yè)面請(qǐng)求直接轉(zhuǎn)發(fā)給靜態(tài)頁(yè)面服務(wù)器,而將動(dòng)態(tài)頁(yè)面請(qǐng)求轉(zhuǎn)發(fā)給應(yīng)用服務(wù)器處理。
通過(guò)Docker創(chuàng)建一個(gè)Web服務(wù)器
對(duì)nginx網(wǎng)頁(yè)界面進(jìn)行測(cè)試
先檢查nginx的安裝環(huán)境:
ps -ef | grep nginx
查看原本系統(tǒng)上有沒(méi)有nginx;
卸載nginx:
apt --purge autoremove nginx
安裝nginx:
apt install nginx -y
再次查看進(jìn)程信息
ps -ef | grep nginx
查看進(jìn)程是否允許;
查看nginx的配置:
cd /etc/nginx ls
訪問(wèn)庫(kù)文件:
ll /etc/nginx/sites-enabled/ vi /etc/nginx/sites-available/default
修改根目錄:
加載配置:
nginx -s reload
訪問(wèn)80端口
查看網(wǎng)頁(yè)內(nèi)容信息:
cd /usr/share/nginx/html ls
vi index.html
修改下標(biāo)題內(nèi)容:
docker容器部署Web服務(wù)器
先拉取一個(gè)nginx鏡像:
docker pull nginx:1.24.0
查看有沒(méi)有拉取成功
查看nginx鏡像詳情:
docker image inspect nginx:1.24.0
啟動(dòng)容器并在bash上運(yùn)行:
docker run -p 8081:80 --name myweb3 -h myweb3.com -e myenv=test -it nginx:1.24.0 bash
進(jìn)入html目錄下,并對(duì)index.html目錄開(kāi)始修改:
cd /usr/share/nginx/ html/ ls
echo "Hello i am in docker my port is 8081" > index.html
通過(guò)瀏覽器訪問(wèn):
總結(jié)
到此這篇關(guān)于如何通過(guò)Docker容器創(chuàng)建一個(gè)Web服務(wù)器的文章就介紹到這了,更多相關(guān)Docker容器創(chuàng)建Web服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker集成CI/CD的項(xiàng)目實(shí)踐
本文主要介紹了Docker集成CI/CD的項(xiàng)目實(shí)踐,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-01-01如何在一臺(tái)服務(wù)器上使用docker運(yùn)行kafka集群
文章詳細(xì)介紹了如何在一臺(tái)服務(wù)器上使用Docker運(yùn)行Kafka集群,包括拉取鏡像、創(chuàng)建網(wǎng)絡(luò)、啟動(dòng)Kafka容器、檢查運(yùn)行狀態(tài)、編寫啟動(dòng)和關(guān)閉腳本、進(jìn)入容器檢查、故障排查以及啟動(dòng)生產(chǎn)者和消費(fèi)者等步驟,感興趣的朋友跟隨小編一起看看吧2025-01-01一文教會(huì)你在Docker容器中實(shí)現(xiàn)Mysql主從復(fù)制
MySQL的主從復(fù)制之前也沒(méi)做過(guò),剛百度了下發(fā)現(xiàn)并不算難,所以下面這篇文章主要給大家介紹了關(guān)于在Docker容器中實(shí)現(xiàn)Mysql主從復(fù)制的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11Docker部署搭建WebDav服務(wù)的詳細(xì)過(guò)程
這篇文章主要介紹了Docker部署WebDav服務(wù),小編綜合了各種共享方式后最終選擇了使用 WebDav 來(lái)共享文件,下面小編把搭建部署過(guò)程分享給大家,需要的朋友可以參考下2022-08-08Docker搭建Minio容器的流程步驟(完整詳細(xì)版)
Minio 是一個(gè)基于Apache License v2.0開(kāi)源協(xié)議的對(duì)象存儲(chǔ)服務(wù),雖然輕量,卻擁有著不錯(cuò)的性能,它兼容亞馬遜S3云存儲(chǔ)服務(wù)接口,非常適合于存儲(chǔ)大容量非結(jié)構(gòu)化的數(shù)據(jù),本文將給大家介紹Docker搭建Minio容器的流程步驟,需要的朋友可以參考下2024-08-08關(guān)于docker的15個(gè)小tip(技巧)
本篇文章主要介紹了docker的15個(gè)小tip(技巧),具有一定的參考價(jià)值,有需要的可以了解一下。2016-12-12