摘要:準(zhǔn)備應(yīng)用我們在本機(jī)新建一個項(xiàng)目文件夾,在里面創(chuàng)建我們的靜態(tài)資源文件,隨后往隨便寫點(diǎn)內(nèi)容,執(zhí)行下命令獲取一下當(dāng)前文件夾所在路徑?,F(xiàn)在訪問便可以得到同端口一樣的效果了,試試看看目前運(yùn)行中的信息吧。
本篇概覽
在本小節(jié)里,我們將從Image倉庫里拉取并運(yùn)行Nginx,嘗試下將本地文件和container文件相映射,Nginx相比hello-world多了些啟動參數(shù),我們將逐個攻破。
準(zhǔn)備應(yīng)用我們在本機(jī)新建一個項(xiàng)目文件夾,在里面創(chuàng)建我們的靜態(tài)資源文件,隨后往index.html隨便寫點(diǎn)內(nèi)容,執(zhí)行下pwd命令獲取一下當(dāng)前文件夾所在路徑。
mkdir class01 && cd class01 touch index.html pwd獲取Nginx Image
我們打開國內(nèi)的Docker Hub鏡像站,搜索Nginx,第一個便是我們所需要的,打開Image詳情頁,會有詳細(xì)地使用說明,我們先使用命令行方式去運(yùn)行這個Image。
docker pull nginx docker run --name my-nginx -d -p 3000:80 nginx
命令解釋:
--name為當(dāng)前創(chuàng)建的container起一個好記的昵稱,默認(rèn)情況下docker會隨機(jī)分配一個昵稱
-d即Deamon,能夠讓進(jìn)程在后臺運(yùn)行而不阻塞命令行。
-p端口暴露,nginx通常運(yùn)行在80端口,為了能夠在主機(jī)訪問container里的nginx,所以需要進(jìn)行端口暴露,格式為:[host port]:[container port]
這時我們在本機(jī)訪問localhost:3000,將會看到nginx的歡迎頁。
掛載本機(jī)目錄
如果想讓nginx伺服本機(jī)的某個目錄,我們需要加上-v命令,-v即Volume,我們希望nginx能夠以當(dāng)前文件夾作為資源目錄,這個過程稱為掛載,通過[Host dir]:[container dir]的形式將主機(jī)的目錄覆蓋container里面的目錄,當(dāng)然b目錄本來的內(nèi)容不會丟失,當(dāng)我們不選擇掛載時,其又將會生效。
docker ps # 顯示當(dāng)前正在運(yùn)行的container,我們可以找到剛剛創(chuàng)建的my-nginx docker stop my-nginx docker rm my-nginx # 停止并刪除my-nginx docker run --name my-nginx -v [your pwd]:/usr/share/nginx/html:ro -d -p 3000:80 nginx
添加的[your pwd]為最開始創(chuàng)建的index.html所在的文件夾,如~/coding/docker-learn/class01
命令解釋:
:ro意為Read Only,對container增加只讀權(quán)限,默認(rèn)為可讀寫
我們再次訪問localhost:3000,顯示的內(nèi)容已經(jīng)是我們創(chuàng)建的index.html了。
復(fù)用掛載的目錄
上一步我們?yōu)?b>my-nginx這個container掛載了數(shù)據(jù)卷,如果我們新的container也想用和my-nginx相同的數(shù)據(jù)卷呢?我們可以使用--volumns-from來復(fù)用數(shù)據(jù)卷地址。
docker run --name my-nginx1 --volumes-from my-nginx -d -p 3001:80 nginx
現(xiàn)在訪問localhost:3001便可以得到同3000端口一樣的效果了,試試docker ps看看目前運(yùn)行中的container信息吧。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/26974.html
摘要:經(jīng)過我們的處理就像在倉庫里修改了文件一樣,將修改后的打快照固化為,這便是生態(tài)的流動源泉。我們啟動過的所有的將會在這里顯示。輸入,這一步我們不僅僅啟動了一個,還傳輸了一個命令進(jìn)去執(zhí)行了。我們試著再次啟動一個容器。 Docker從哪兒下載? 由于我們訪問Docker官網(wǎng)一般情況下會非常慢,所以我們不得不把目光投向國內(nèi)的鏡像站,還好,DaoCloud為我們掃清了一系列障礙,點(diǎn)擊前往。 你只需...
摘要:容器是又一核心概念。啟動已終止容器可以利用命令,直接將一個已經(jīng)終止的容器啟動運(yùn)行。此外,當(dāng)容器中指定的應(yīng)用終結(jié)時,容器也自動終止。只用參數(shù)時,由于沒有分配偽終端,界面沒有我們熟悉的命令提示符,但命令執(zhí)行結(jié)果仍然可以返回。 容器是 Docker 又一核心概念。簡單的說,容器是獨(dú)立運(yùn)行的一個或一組應(yīng)用,以及它們的運(yùn)行態(tài)環(huán)境。對應(yīng)的,虛擬機(jī)可以理解為模擬運(yùn)行的一整套操作系統(tǒng)(提供了運(yùn)行態(tài)環(huán)境...
摘要:了解開源的容器平臺用于分享管理容器的平臺使用客戶端服務(wù)器架構(gòu)模式。守護(hù)進(jìn)程會處理復(fù)雜繁重的任務(wù),例如建立運(yùn)行發(fā)布你的容器??蛻舳撕褪刈o(hù)進(jìn)程之間通過或者進(jìn)行通信。 Step1:了解Docker 開源的容器平臺:Golang https://github.com/docker/dockerDocker Hub: 用于分享、管理 Docker 容器的 Docker SaaS 平臺 -- D...
閱讀 2332·2021-09-22 15:27
閱讀 3184·2021-09-03 10:32
閱讀 3515·2021-09-01 11:38
閱讀 2506·2019-08-30 15:56
閱讀 2223·2019-08-30 13:01
閱讀 1547·2019-08-29 12:13
閱讀 1429·2019-08-26 13:33
閱讀 902·2019-08-26 13:30