最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時(shí)間:2019年01月22日 09:49:26   作者:時(shí)間被海綿吃了  
這篇文章主要介紹了Docker使用編寫dockerfile啟動(dòng)node.js應(yīng)用,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

編寫 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 說明鏡像的維護(hù)者
  • COPY 命令將宿主機(jī)的文件拷貝到鏡像中,格式為 COPY [--chown=<user>:<group>] <源路徑>... <目標(biāo)路徑>,這里將項(xiàng)目目錄下的所有文件都拷貝到鏡像中的 /app 目錄下。如果目標(biāo)路徑不存在,docker 將自動(dòng)創(chuàng)建。
  • WORKDIR 用來指定工作目錄,即是 CMD 執(zhí)行所在的目錄。
  • RUN 命令用來執(zhí)行 shell 命令,這里用來安裝 pm2
  • EXPOSE 命令用來 聲明 運(yùn)行時(shí)容器提供服務(wù)端口,但要注意運(yùn)行時(shí)并不會(huì)開啟這個(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

運(yùn)行容器

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

docker rundocker createdocker start 兩個(gè)命令的簡寫。

  • -d--detach,代表讓容器后臺(tái)運(yùn)行。
  • -p 指定宿主機(jī)和容器的端口映射,左邊為宿主機(jī)的端口,右邊為容器的端口,也就是說訪問宿主機(jī)的 8003 端口,會(huì)映射到容器內(nèi)的 3000 端口。
  • --name 設(shè)置容器別名,如果不指定,docker 會(huì)隨機(jī)生成一個(gè)名字,比如 tender_swirles 之類的。

執(zhí)行

docker ps

正常展示如下

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

進(jìn)入容器

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

docker exec -it express-app bash

-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

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • docker使用Dockerfile構(gòu)建鏡像的實(shí)現(xiàn)示例

    docker使用Dockerfile構(gòu)建鏡像的實(shí)現(xiàn)示例

    本文主要介紹了docker使用Dockerfile構(gòu)建鏡像的實(shí)現(xiàn)示例,通過編寫 Dockerfile,您可以定義鏡像的基礎(chǔ)環(huán)境、安裝軟件包、復(fù)制文件、設(shè)置環(huán)境變量等操作,下面就來介紹一下
    2024-01-01
  • CentOS 8.4安裝Docker的詳細(xì)教程

    CentOS 8.4安裝Docker的詳細(xì)教程

    這篇文章主要介紹了CentOS 8.4安裝Docker的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-11-11
  • 手動(dòng)構(gòu)建自己的docker容器鏡像實(shí)戰(zhàn)

    手動(dòng)構(gòu)建自己的docker容器鏡像實(shí)戰(zhàn)

    這篇文章主要介紹了如何手動(dòng)構(gòu)建自己的鏡像并上傳到鏡像倉庫中,文中有詳細(xì)的代碼實(shí)例,需要的朋友可以參考閱讀
    2023-04-04
  • 基于Docker的MySQL主從復(fù)制環(huán)境搭建的實(shí)現(xiàn)步驟

    基于Docker的MySQL主從復(fù)制環(huán)境搭建的實(shí)現(xiàn)步驟

    這篇文章主要介紹了基于Docker的MySQL主從復(fù)制環(huán)境搭建的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • docker-compose中的redis-stack詳解

    docker-compose中的redis-stack詳解

    Redis是一個(gè)開源的內(nèi)存數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)系統(tǒng),主要用于數(shù)據(jù)庫、緩存和消息代理,支持多種數(shù)據(jù)結(jié)構(gòu),RedisStack則基于Redis,提供棧的操作及擴(kuò)展功能,適合復(fù)雜數(shù)據(jù)處理,本文給大家介紹docker-compose中的redis-stack,感興趣的朋友跟隨小編一起看看吧
    2024-09-09
  • 如何使用Celery和Docker處理Django中的定期任務(wù)

    如何使用Celery和Docker處理Django中的定期任務(wù)

    這篇文章主要介紹了使用Celery和Docker處理Django中的定期任務(wù)的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-05-05
  • linux下使用Docker Compose部署Spug實(shí)現(xiàn)公網(wǎng)遠(yuǎn)程訪問的過程

    linux下使用Docker Compose部署Spug實(shí)現(xiàn)公網(wǎng)遠(yuǎn)程訪問的過程

    這篇文章主要介紹了linux下使用Docker Compose部署Spug實(shí)現(xiàn)公網(wǎng)遠(yuǎn)程訪問,本例演示搭建使用docker compose 方式安裝Spug,并結(jié)合cpolar,需要的朋友可以參考下
    2023-11-11
  • 在Ubuntu18.04上安裝Docker CE的方法(社區(qū)版)

    在Ubuntu18.04上安裝Docker CE的方法(社區(qū)版)

    這篇文章主要介紹了在Ubuntu18.04上安裝Docker CE的方法(社區(qū)版),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • docker實(shí)現(xiàn)重新打tag并刪除原tag的鏡像

    docker實(shí)現(xiàn)重新打tag并刪除原tag的鏡像

    這篇文章主要介紹了docker實(shí)現(xiàn)重新打tag并刪除原tag的鏡像,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 基于Docker鏡像部署go項(xiàng)目的方法步驟

    基于Docker鏡像部署go項(xiàng)目的方法步驟

    這篇文章主要介紹了基于Docker鏡像部署go項(xiàng)目的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04

最新評(píng)論

上饶县| 江孜县| 黎平县| 赤壁市| 贞丰县| 五河县| 万源市| 乌苏市| 康保县| 湖州市| 乐清市| 仙游县| 平凉市| 子洲县| 连山| 长岛县| 成都市| 综艺| 迭部县| 桐梓县| 西安市| 武鸣县| 丘北县| 阳江市| 许昌市| 乌兰察布市| 廊坊市| 泾源县| 尖扎县| 岳池县| 霍山县| 综艺| 汉阴县| 揭西县| 老河口市| 延寿县| 民乐县| 通山县| 工布江达县| 斗六市| 云梦县|