您好,登錄后才能下訂單哦!
這篇文章主要講解了“Docker新手部署NGINX的方法”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Docker新手部署NGINX的方法”吧!
docker是什么
docker的思想來自于集裝箱,集裝箱解決了什么問題?在一艘大船上,可以把貨物規(guī)整的擺放起來。并且各種各樣的貨物被集裝箱標準化了,集裝箱和集裝箱之間不會互相影響。那么我就不需要專門運送水果的船和專門運送化學品的船了。只要這些貨物在集裝箱里封裝的好好的,那我就可以用一艘大船把他們都運走。
docker就是類似的理念?,F(xiàn)在都流行云計算了,云計算就好比大貨輪。docker就是集裝箱。
1.不同的應(yīng)用程序可能會有不同的應(yīng)用環(huán)境,比如.net開發(fā)的網(wǎng)站和php開發(fā)的網(wǎng)站依賴的軟件就不一樣,如果把他們依賴的軟件都安裝在一個服務(wù)器上就要調(diào)試很久,而且很麻煩,還會造成一些沖突。比如iis和apache訪問端口沖突。這個時候你就要隔離.net開發(fā)的網(wǎng)站和php開發(fā)的網(wǎng)站。常規(guī)來講,我們可以在服務(wù)器上創(chuàng)建不同的虛擬機在不同的虛擬機上放置不同的應(yīng)用,但是虛擬機開銷比較高。docker可以實現(xiàn)虛擬機隔離應(yīng)用環(huán)境的功能,并且開銷比虛擬機小,小就意味著省錢了。
2.你開發(fā)軟件的時候用的是ubuntu,但是運維管理的都是centos,運維在把你的軟件從開發(fā)環(huán)境轉(zhuǎn)移到生產(chǎn)環(huán)境的時候就會遇到一些ubuntu轉(zhuǎn)centos的問題,比如:有個特殊版本的數(shù)據(jù)庫,只有ubuntu支持,centos不支持,在轉(zhuǎn)移的過程當中運維就得想辦法解決這樣的問題。這時候要是有docker你就可以把開發(fā)環(huán)境直接封裝轉(zhuǎn)移給運維,運維直接部署你給他的docker就可以了。而且部署速度快。
3.在服務(wù)器負載方面,如果你單獨開一個虛擬機,那么虛擬機會占用空閑內(nèi)存的,docker部署的話,這些內(nèi)存就會利用起來。
總之docker就是集裝箱原理。
centos7安裝docker
使用 yum 安裝(centos 7下)
注:docker 要求 centos 系統(tǒng)的內(nèi)核版本高于 3.10 ,查看本頁面的前提條件來驗證你的centos 版本是否支持 docker 。
#查看你當前的內(nèi)核版本 uname -r #安裝 docker sudo yum -y install docker #啟動 docker 后臺服務(wù) sudo service docker start #測試運行 hello-world,由于本地沒有hello-world這個鏡像,所以會下載一個hello-world的鏡像,并在容器內(nèi)運行。 sudo docker run hello-world
使用腳本安裝 docker
#確保 yum 包更新到最新 sudo yum update #執(zhí)行 docker 安裝腳本,執(zhí)行這個腳本會添加 docker.repo 源并安裝 docker。 curl -fssl https://get.docker.com/ | sh #啟動 docker 進程 sudo service docker start #驗證 docker 是否安裝成功并在容器中執(zhí)行一個測試的鏡像 sudo docker run hello-world
docker容器基本操作
#運行ubuntu鏡像,并創(chuàng)建一個交互式的環(huán)境 sudo docker run -it ubuntu bash #查看運行進程 sudo docker ps -a #查看容器鏡像詳細信息 sudo docker inspect 容器名<id or name> #重新啟動開始的容器 sudo docker start 容器名 #刪除已有容器 sudo docker rm 容器名
docker容器開啟守護式進程
第一種方法:
#進入交互式的環(huán)境 sudo docker run -it ubuntu bash #按ctrl+p 和ctrl+q退出 #查看運行進程 sudo docker ps #附加到正在運行的容器 sudo docker attach 容器名<id or name>
第二種方法:
#進入交互式的環(huán)境 sudo docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done" #查看運行進程 sudo docker ps #使用日志命令查看正在運行的容器 sudo docker logs -tf --tail 0 容器名<id or name> #查看容器內(nèi)的進程 sudo docker top 容器名 #在運行中的容器中運行新的進程 sudo docker exec -itd 容器名
docker容器停止守護式進程
第一種方法:發(fā)送命令,等待停止
sudo docker stop 容器名
第二種方法:直接殺死
sudo docker kill 容器名
docker中部署靜態(tài)網(wǎng)站
nginx部署流程
創(chuàng)建映射80端口的交互式容器
安裝nginx
安裝文本編輯器vim
創(chuàng)建靜態(tài)頁面
修改nginx配置文件
運行nginx
驗證網(wǎng)站訪問
#新建容器web,設(shè)置容器端口映射ip:hostport:containerport sudo docker run -p 0.0.0.0:8080:80 --name web -i -t ubuntu bash #進入容器交互環(huán)境 #更新包 apt-get update #安裝nginx apt-get install -y nginx #安裝vim apt-get install -y vim #按ctrl+p 和ctrl+q退出,開啟守護進程 #查看守護進程 sudo docker ps #查看端口映射 sudo docker port web #查看web容器進程情況 sudo docker top web #查看web信息,找到容器ip sudo docker inspect web
感謝各位的閱讀,以上就是“Docker新手部署NGINX的方法”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對Docker新手部署NGINX的方法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。