国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Nodejs Express dockerfile最佳實踐

xi4oh4o / 3282人閱讀

摘要:少啰嗦,先看代碼分析原理使用的鏡像,顯著縮小鏡像大小使用命令,清空緩存,再次減少包占用的時間和放在一起寫,減少的層數使用淘寶源,顯著提高包下載的速度守護進程通過運行中的包,避免多帶帶全局安裝的占用時間到到這樣的順序可以充分使

少啰嗦,先看代碼 package.json
{
  "name": "xxx",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www",
    "forever": "node_modules/forever/bin/forever bin/www"
  },
  "dependencies": {
    "async": "0.9.0",
    "body-parser": "1.13.2",
    "compression": "1.6.2",
    "config": "1.12.0",
    "connect-multiparty": "2.0.0",
    "cookie-parser": "1.3.5",
    "debug": "2.2.0",
    "ejs": "2.3.3",
    "express": "4.13.1",
    "forever": "0.15.3",
    "http-proxy-middleware": "0.17.3",
    "log4js": "0.6.24",
    "serve-favicon": "2.3.0"
  }
}
dockerfile
FROM hub.c.163.com/lightingfire/nodejs:6.9.1-alpine
WORKDIR /app
COPY package.json /app
RUN npm i --registry https://registry.npm.taobao.org && npm cache clean
COPY . /app
EXPOSE 8086
CMD npm run forever
分析原理

使用alpine的nodejs鏡像,顯著縮小nodejs鏡像大小

使用npm cache clean命令,清空npm緩存,再次減少npm包占用的時間

npm i 和 npm chache clean放在一起寫,減少build的層數

使用淘寶npm源,顯著提高npm包下載的速度

守護進程forever通過npm運行node_module中的包,避免多帶帶全局安裝forever的占用時間

copy package到run npm i到copy . /app, 這樣的順序可以充分使用鏡像緩存

修改過后,對比之前通過jenkins打包時間從10分鐘縮短到7.4秒

參考資料

How to write excellent Dockerfiles

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/26960.html

相關文章

  • Node.js docker 鏡像體積優化實踐

    摘要:接下來我們將逐步的減少這個鏡像的體積。優化生產環境鏡像使用鏡像大幅減小鏡像體積的最簡單和最快的方法是選擇一個小得多的基本鏡像。使用多階段構建可以充分利用鏡像的緩存,大大減少最終部署到生產環境的時間。 關注作者github每日一道面試題詳解 你討厭部署你的應用程序花費很長時間嗎? 對于單個容器來說,超過gb并不是最佳實踐。每次部署新版本時都要處理數十億字節,這對我們來說并不太合適。 本文...

    wenhai.he 評論0 收藏0
  • 使用Dockerfile部署nodejs服務

    摘要:構建過程類似如下運行容器鏡像構建完成后,可以通過所構建的鏡像創建運行容器,從而實現應用的化部暑。使用鏡像運行一個容器在以上操作中,我們通過鏡像運行了容器,并將容器命名為。此時可通過訪問服務。 初始化Dockerfile 假設我們的項目名為express,在express項目中創建編輯Dockerfile文件: $ vim Dockerfile FROM node:latest RU...

    nihao 評論0 收藏0
  • 如何編寫最佳Dockerfile

    摘要:將安裝與模塊安裝放在一起的話,則每次修改源代碼,都需要重新安裝,這顯然不合適。使用設置鏡像元數據使用指令,可以為鏡像設置元數據,例如鏡像創建者或者鏡像說明。自從年雙十一正式上線,累計處理了億錯誤事件,付費客戶有金山軟件百姓網等眾多品牌企業。 譯者按: Dockerfile 的語法非常簡單,然而如何加快鏡像構建速度,如何減少 Docker 鏡像的大小卻不是那么直觀,需要積累實踐經驗。這篇...

    Sike 評論0 收藏0
  • docker安裝nodejs

    摘要:創建文件夾創建創建創建配置文件設置基礎鏡像如果上個步驟已經更新軟件源,這步可以忽略安裝和將目錄中的文件添加至鏡像的目錄中設置工作目錄安裝依賴庫暴露端口,便于訪問設置啟動時默認運行命令構建鏡像通過該命令,按照所配置的信息構建出鏡 創建文件夾: mkdir ~/docker-node-hello && cd $_ 創建 index.js var express = require(expr...

    Jaden 評論0 收藏0
  • docker安裝nodejs

    摘要:創建文件夾創建創建創建配置文件設置基礎鏡像如果上個步驟已經更新軟件源,這步可以忽略安裝和將目錄中的文件添加至鏡像的目錄中設置工作目錄安裝依賴庫暴露端口,便于訪問設置啟動時默認運行命令構建鏡像通過該命令,按照所配置的信息構建出鏡 創建文件夾: mkdir ~/docker-node-hello && cd $_ 創建 index.js var express = require(expr...

    xiaodao 評論0 收藏0

發表評論

0條評論

xi4oh4o

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<