新聞中心
實戰(zhàn)基于docker部署nginx應用網(wǎng)站
作者:Aasee 2022-07-12 17:24:48
云計算
云原生 首先我們需要先知道,Nginx是怎么工作的,Nginx有兩個配置文件,Conf.d 和 Nginx.conf其中Conf.d是個文件夾,里面有個文件是Default.Conf。

公司主營業(yè)務:成都網(wǎng)站設計、成都網(wǎng)站制作、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出新寧免費做網(wǎng)站回饋大家。
??想了解更多關(guān)于開源的內(nèi)容,請訪問:??
??51CTO 開源基礎(chǔ)軟件社區(qū)??
一、準備工作
首先我們需要準備一個服務器,一個打包好了的前端應用網(wǎng)站,動態(tài)網(wǎng)站的話還需要一個后端。
這里我就以華為云為例。當然服務器就全看大家的荷包了。
我們先打開華為云找到容器。
這里我們可以看到一個叫做容器鏡像服務 SWR的產(chǎn)品,點進去。點擊立即使用。找到這個點擊,有了這個我們就可以進行鏡像加速。
這個地址在后面就會使用到,當然我們這個不僅僅是華為云有,像阿里云, 騰訊云這些也是有的。找的方法也差不多,還有一些地址可以看我前面幾篇的文章也是有寫的。
接下來我們就可以去xshell里面進行操作了。
二、下載docker
這里我們使用docker來進行部署,所以我們需要先去下載一下docker。詳細的可以看我??這篇文章??,這里我們就加加速。
(1)卸載舊版本
首先先使用。
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
卸載舊版本,如果有的話(看情況自己判斷)。
(2)設置下載源
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
設置好了之后就行進行下載了,下面是下載代碼。
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
注意:這樣下載的是最新版本的,如果需要下載指定版本的話可以看我上面說的那篇文章。
(3)設置鏡像加速
這時我們剛剛進華為云復制的地址就有用處了。當然也還有很多選擇。
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{ "registry-mirrors": ["你的加速地址"] }
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
完成之后可以使用docker info來查看是否修改成功。
這個registry mirrors變成你寫進去的地址那么就成功了。
(4)下載nginx
接下來,我們就可以使用docker pull命令來下載nginx了。
下載完成之后我們再使用docker images命令來查看下載好的鏡像。
可以看到到這里我們就已經(jīng)基本做好準備工作了。接下來我需要對文件進行處理,方便我們對docker里的nginx服務器里的網(wǎng)頁進行配置修改和網(wǎng)頁修改。也就是使用我們的數(shù)據(jù)卷技術(shù)。
三、配置我們的nginx
(1)配置文件
首先我們需要先知道,nginx是怎么工作的,nginx有兩個配置文件,conf.d 和 nginx.conf其中conf.d是個文件夾,里面有個文件是default.conf。
他們的地址分別為:
/etc/nginx/conf.d
/etc/nginx/nginx.conf
為什么我要提這一嘴呢,因為我們需要對這兩個文件進行配置操作,滿足我們后續(xù)的需求,而在docker中呢下載的nginx鏡像是進行縮減過的,只保留了基礎(chǔ)的功能,所以我們?nèi)绻麤]有使用docker file生成鏡像時對nginx進行基本配置是無法在里面使用vi和vim功能和其他一些所需的操作功能,而且就算有我們每次需要進去配置也是比較的不方便,所以我們需要進行數(shù)據(jù)卷操作,使我們能夠更加簡單的方便的來操作docker里的服務。
(2)配置網(wǎng)頁
這里我需要讓我的網(wǎng)址當用戶進入是判斷是手機用戶還是電腦用戶然后自行跳轉(zhuǎn)相應的頁面。
(3)操作
所以我們需要創(chuàng)建兩個文件夾。
然后把自己準備好的打包好了的網(wǎng)頁放進來。
接下來就去操作配置文件了。
像我這樣創(chuàng)建幾個文件夾和文件。這個創(chuàng)建語法這里就不贅述了。然后我們就可以把這幾個配置文件給配置一下了。這里先解釋一下這幾個文件的用途,conf.d是個文件夾,里面有個文件叫default.conf和nginx.conf文件一樣是nginx的配置文件,我們可以在這兩個文件中書寫一些你所需的配置,像啥負載均衡啊,代理,重寫跳轉(zhuǎn)頁面啥的都是在這配置。當然我們這里是要通過數(shù)據(jù)卷和nginx里的配置文件連起來使其生效。這里需要注意一點當我們掛載的是文件時,我們需要給文件設置權(quán)限不然容器里的文件內(nèi)容不會隨著主機更改而更改chmod 777 nginx.conf。logs文件夾里是日志文件,可以讓我們獲取到nginx的日志。
建議:盡量掛載目錄而不是掛載文件!
nginx.conf文件中,我這里進行如下操作。
意思就是當用戶端訪問時判斷是手機端還是pc端然后跳轉(zhuǎn)到相應的界面。conf.d文件夾中的default.conf也可以進行配置。另外的logs文件夾就不需要去操作了。
(4)docker run
接下來我們就可以運行這個容器了,使用docker run命令。
docker run -d -v /home/nginx-music/html/pc:/usr/share/nginx/html/pc -v /home/nginx-music/nginx/conf.d:/etc/nginx/conf.d -v /home/nginx-music/nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/nginx-music/html/mo:/usr/share/nginx/html/mo -v /home/nginx-music/nginx/logs:/var/log/nginx -v /home/nginx-music/nginx/logs:/var/log/nginx -p 80:80 --name nginx-music-v1.0 nginx
將對應的主機目錄和容器目錄或文件進行掛載即可。設置端口映射,命名,后臺執(zhí)行,鏡像名。這些命令不理解的話可以看我上兩篇文章。
(5)查看是否成功
我們可以先通過docker exec -it nginx-music-v1.0 /bin/bash這個命令進入我們的nginx容器進行檢測,使用nginx -t先進行測試看看我們的nginx.conf文件的配置語法有無錯誤。
之后我們就可以去網(wǎng)站上測試一下了看像是否成功。
這樣就可以了。
網(wǎng)站題目:實戰(zhàn)基于Docker部署Nginx應用網(wǎng)站
URL標題:http://m.fisionsoft.com.cn/article/dphicgg.html


咨詢
建站咨詢
