真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Docker如何使用dockerfile啟動(dòng)node.js應(yīng)用

本篇內(nèi)容介紹了“Docker如何使用dockerfile啟動(dòng)node.js應(yīng)用”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

站在用戶的角度思考問(wèn)題,與客戶深入溝通,找到平橋網(wǎng)站設(shè)計(jì)與平橋網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:網(wǎng)站建設(shè)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊(cè)、雅安服務(wù)器托管、企業(yè)郵箱。業(yè)務(wù)覆蓋平橋地區(qū)。

編寫(xiě) dockerfile

以 express 自動(dòng)創(chuàng)建的目錄為例,目錄結(jié)構(gòu)如下:

├── /bin
│  └── www
├── /node_modules
├── /public
├── /routes
├── /views
├── package-lock.json
├── package.json
├── ecosystem.config.js
├── app.js
└── dockerfile

在項(xiàng)目目錄下新建 dockerfile 文件

from node:10.15
maintainer sunhengzhe@foxmail.com
copy . /app/
workdir /app
run npm install pm2 -g
expose 8003
cmd ["pm2-runtime", "ecosystem.config.js"]
  • from 指定基礎(chǔ)鏡像為 node 的 10.15 版本(node 官方版本可)

  • maintainer 說(shuō)明鏡像的維護(hù)者

  • copy 命令將宿主機(jī)的文件拷貝到鏡像中,格式為 copy [--chown=:] <源路徑>... <目標(biāo)路徑>,這里將項(xiàng)目目錄下的所有文件都拷貝到鏡像中的 /app 目錄下。如果目標(biāo)路徑不存在,docker 將自動(dòng)創(chuàng)建。

  • workdir 用來(lái)指定工作目錄,即是 cmd 執(zhí)行所在的目錄。

  • run 命令用來(lái)執(zhí)行 shell 命令,這里用來(lái)安裝 pm2

  • expose 命令用來(lái) 聲明 運(yùn)行時(shí)容器提供服務(wù)端口,但要注意運(yùn)行時(shí)并不會(huì)開(kāi)啟這個(gè)端口的服務(wù)。這個(gè)命令主要是幫助使用者理解這個(gè)鏡像服務(wù)的守護(hù)端口,以方便配置映射;另外在使用隨機(jī)端口映射時(shí),會(huì)自動(dòng)隨機(jī)映射 expose 的端口

  • cmd 是默認(rèn)的容器主進(jìn)程的啟動(dòng)命令

構(gòu)建鏡像

在項(xiàng)目目錄下執(zhí)行

docker build -t express-app:v1 .

如果構(gòu)建成功,查看鏡像列表

docker images

應(yīng)該會(huì)輸出鏡像 express-app:v1

Docker如何使用dockerfile啟動(dòng)node.js應(yīng)用

運(yùn)行容器

docker run -d -p 8003:3000 --name="express-app" express-app:v1

docker run 是 docker create 和 docker start 兩個(gè)命令的簡(jiǎn)寫(xiě)。

  • -d 即 --detach,代表讓容器后臺(tái)運(yùn)行。

  • -p 指定宿主機(jī)和容器的端口映射,左邊為宿主機(jī)的端口,右邊為容器的端口,也就是說(shuō)訪問(wèn)宿主機(jī)的 8003 端口,會(huì)映射到容器內(nèi)的 3000 端口。

  • --name 設(shè)置容器別名,如果不指定,docker 會(huì)隨機(jī)生成一個(gè)名字,比如 tender_swirles 之類的。

執(zhí)行

docker ps

正常展示如下

Docker如何使用dockerfile啟動(dòng)node.js應(yīng)用

添加 -a 參數(shù)可以查看所有已啟動(dòng)容器。

進(jìn)入容器

如果要進(jìn)入容器進(jìn)行操作,執(zhí)行下面命令

docker exec -it express-app bash

Docker如何使用dockerfile啟動(dòng)node.js應(yīng)用

-i 與 -t 一般結(jié)合使用,-i 啟動(dòng)交互模式,-t 指定需要分配終端,可以自行嘗試不傳其中一個(gè)的效果。

與 exec 類似的還有 attach 命令,命令為 docker attach express-app,但從這個(gè) stdin 中 exit,會(huì)導(dǎo)致容器的停止,所以推薦使用 exec 命令。

關(guān)閉操作

停止容器

docker stop express-app

刪除容器

docker rm express-app

如果刪除時(shí)容器還在運(yùn)行,需要加上 -f 參數(shù)

刪除鏡像

docker rmi express-app:v1

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

“Docker如何使用dockerfile啟動(dòng)node.js應(yīng)用”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!


網(wǎng)站欄目:Docker如何使用dockerfile啟動(dòng)node.js應(yīng)用
鏈接分享:http://weahome.cn/article/ihcshh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部