亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 服務器 > Web服務器 > 正文

詳解nodejs之創建最小docker鏡像

2024-09-01 13:51:29
字體:
來源:轉載
供稿:網友

使用docker運行服務,你可以擁有一致的環境,可以精確控制服務的運行資源(cpu,內存),可以方便的設置端口和網絡,可以使用鏡像倉儲管理和分發代碼?,F在越來越多的開發者選擇將服務運行在docker上。

好多nodejs用戶在使用docker時,直接使用了默認的node鏡像。但你不覺得它太大了嗎?現在node:6.10.1鏡像的體積已經達到666M,其實要實現同樣的功能,只需43.5M就夠了。尺寸小,意味者更低的資源消耗,更快的下載速度,更小的傳輸帶寬。下面將介紹如何創建極簡node鏡像。

FROM: 設置alpine基礎鏡像

目前docker下最輕量的操作系統是alpine,一個alpine的體積不到5M。node默認鏡像依賴的基礎鏡像是debian, debian:jessie體積已打123M,所以想減小尺寸,首要就是從基礎鏡像切換到alpine。

FROM alpine:3.5

RUN: 設置node用戶

adduser -D -u 1000 node

設置node用戶是可選的。添加用戶后在運行容器是可以指定已node用戶的身份運行服務

RUN: 安裝node編譯工具

apk add --no-cache /  libstdc++ /&& apk add --no-cache --virtual .build-deps /  binutils-gold /  curl /  g++ /  gcc /  gnupg /  libgcc /  linux-headers /  make /  python 
  1. apk add --no-cache不使用本地緩存安裝包數據庫,直接從遠程獲取安裝包信息安裝。這樣我們就不必通過apk update獲取安裝包數據庫了
  2. apk add --virtual .build-deps將本次安裝的所有包封裝成一個名為.build-deps的虛擬包。這樣做的好處是可以通過apk del .build-deps一鍵清除這些包

RUN: 導入node源碼包公鑰

for key in /  9554F04D7259F04124DE6B476D5A82AC7E37093B /  94AE36675C464D64BAFA68DD7434390BDBE9B9C5 /  FD3A5288F042B6850C66B31F09FE44734EB7990E /  71DCFD284A79C3B38668286BC97EC7A07EDE3FC1 /  DD8F2338BAE7501E3DD5AC78C273792F7D83545D /  B9AE9905FFD7803F25714661B63B535A4C206CA9 /  C4F0DFFF4E8C1A8236409D08E73BC641CC11F4C8 /  56730D5401028683275BD23C23EFEFE93C4CFFFE /; do /gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key"; /done

這些公鑰將用來校驗我們通過curl下載的nodejs源碼文件

RUN: 下載并node校驗源碼文件

curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/node-v$NODE_VERSION.tar.xz" /&& curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/SHASUMS256.txt.asc" /&& gpg --batch --decrypt --output SHASUMS256.txt SHASUMS256.txt.asc /&& grep " node-v$NODE_VERSION.tar.xz/$" SHASUMS256.txt | sha256sum -c -

$NODE_VERSION: 指node版本,如6.10.1

RUN: 編譯安裝node

tar -xf "node-v$NODE_VERSION.tar.xz" /&& cd "node-v$NODE_VERSION" /&& ./configure /&& make -j$(getconf _NPROCESSORS_ONLN) /&& make install 
  1. 如果不需要npm, 可以替換第三行為&& ./configure --without-npm
  2. $NODE_VERSION: 指node版本,如6.10.1

RUN: 清理

apk del .build-deps /&& cd .. /&& rm -Rf "node-v$NODE_VERSION" /&& rm "node-v$NODE_VERSION.tar.xz" SHASUMS256.txt.asc SHASUMS256.txt

$NODE_VERSION: 指node版本,如6.10.1

CMD: 設置鏡像入口為node

CMD [ "node" ]

上面為創建nodejs鏡像必須步驟,下面的步驟根據需要添加

安裝yarn

安裝依賴

apk add --no-cache --virtual .build-deps-yarn curl gnupg

導入公鑰

for key in /6A010C5166006599AA17F08146C2130DFD2497F5 /; do / gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key"; /done

下載校驗

 curl -fSL -o yarn.js "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-legacy-$YARN_VERSION.js" / && curl -fSL -o yarn.js.asc "https://yarnpkg.com/downloads/$YARN_VERSION/yarn-legacy-$YARN_VERSION.js.asc" / && gpg --batch --verify yarn.js.asc yarn.js / && rm yarn.js.asc

$YARN_VERSION: 指yarn版本,如0.22

安裝

mv yarn.js /usr/local/bin/yarn /&& chmod +x /usr/local/bin/yarn /

清理

apk del .build-deps-yarn

c++插件

如果要支持c++插件,還需安裝python,make,g++

apk add --no-cache python make g++

headers文件

有些c++模塊使用過程中還需要下載node-headers文件,node-headers文件國內下載不穩定,建議也集成到鏡像里,否則你可能碰到一個包編譯很久沒動靜的情況。

參考nodejs源碼下載校驗步驟對headers文件進行下載校驗

 

復制代碼 代碼如下:

curl -SLO "https://nodejs.org/dist/v$NODE_VERSION/node-v${NODE_VERSION}-headers.tar.xz"

 

安裝headers文件

mkdir /root/.node-gyptar --strip-component 1 -xzf node-v${NODE_VERSION}-heraders.tar.xz /root/.node-gyp/$NODE_VERSIONrm -rf node-v${NODE_VERSION}-headers.tar.xz

$NODE_VERSION: 指node版本,如6.10.1

結論

創建最小docker鏡像是很簡單且很有意義的

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩中文在线视频| 日日狠狠久久偷偷四色综合免费| 一本大道亚洲视频| 日韩精品在线电影| 综合网日日天干夜夜久久| 日韩国产在线看| 欧美资源在线观看| 国产成人久久久精品一区| 欧美亚洲国产另类| 欧美国产精品日韩| 91大神福利视频在线| 亚洲精品女av网站| 国模视频一区二区三区| 亚洲国产精品大全| 亚洲成人精品久久久| 久久精品影视伊人网| 黑人巨大精品欧美一区二区三区| 亚洲一区二区免费在线| 欧美激情亚洲精品| 欧美日韩在线观看视频小说| 亚洲女人被黑人巨大进入al| 亚洲图片在线综合| 国产日韩亚洲欧美| 国产精品入口日韩视频大尺度| 午夜精品理论片| 日本一欧美一欧美一亚洲视频| 欧美日韩久久久久| 国产免费一区二区三区香蕉精| 欧美日韩国产第一页| 91精品视频大全| 国产成人aa精品一区在线播放| 91久久夜色精品国产网站| 午夜精品久久久久久久久久久久久| 91理论片午午论夜理片久久| 日韩免费观看视频| 中文字幕精品一区二区精品| 欧美午夜精品久久久久久人妖| 国产精品啪视频| 亚洲国产美女久久久久| 亚洲国产精品网站| 亚洲精品国产品国语在线| 国产成人中文字幕| www.日本久久久久com.| 亚洲一区二区免费在线| 精品久久久久久久久久久久| 午夜精品久久久久久久99热浪潮| 欧美激情一级二级| 91美女福利视频高清| 成人性生交大片免费观看嘿嘿视频| 欧美成人精品影院| 国产剧情日韩欧美| 国产精品久久久久久久av电影| 成人久久精品视频| 最近2019中文免费高清视频观看www99| 国产精品91在线观看| 热门国产精品亚洲第一区在线| 亚洲欧洲日产国码av系列天堂| 亚洲一区二区中文字幕| 国产丝袜一区二区| 国产一区二区免费| 欧美在线观看www| 国产91精品高潮白浆喷水| 久久这里只有精品视频首页| 97在线观看免费| 97视频在线观看网址| 国产精品高潮粉嫩av| 色与欲影视天天看综合网| 亚洲一区二区自拍| 热99在线视频| 色偷偷888欧美精品久久久| 亚洲一区二区三区四区视频| 91av视频在线播放| 久久免费精品日本久久中文字幕| 亚洲欧美第一页| 久久免费福利视频| 国产精品成av人在线视午夜片| 国产精品激情av在线播放| 中文字幕欧美国内| 国产欧美精品xxxx另类| 亚洲色图色老头| 午夜精品久久久久久久99黑人| 国产一区二区在线免费视频| 国产亚洲欧洲在线| 国产精品18久久久久久麻辣| 欧美在线精品免播放器视频| 91精品啪aⅴ在线观看国产| 国产欧美在线看| 秋霞午夜一区二区| 色婷婷久久av| 欧美日韩一区二区免费在线观看| 亚洲精品综合精品自拍| 欧美极品在线视频| 欧美日韩人人澡狠狠躁视频| 欧美日韩中文字幕综合视频| 中文字幕一区二区精品| 欧美日本高清一区| 国产欧美欧洲在线观看| 亚洲精品一区二区三区婷婷月| 亚洲欧美第一页| 国内精品在线一区| 久久高清视频免费| 1769国产精品| 国产午夜精品全部视频在线播放| 国产精品高清在线| 欧美日韩国产123| 久久人人爽人人爽人人片av高请| 成人黄色激情网| 国产国产精品人在线视| 另类色图亚洲色图| 国产精品久久一| 国产精品精品一区二区三区午夜版| 91国偷自产一区二区三区的观看方式| 久久久久久国产精品三级玉女聊斋| 亚洲天堂色网站| 日韩av免费在线看| 亚洲亚裔videos黑人hd| 97人人模人人爽人人喊中文字| 日韩电影在线观看永久视频免费网站| 色婷婷av一区二区三区在线观看| 国产一区二区三区在线视频| 92福利视频午夜1000合集在线观看| 最新国产成人av网站网址麻豆| 久久九九免费视频| 2021久久精品国产99国产精品| 7777免费精品视频| 姬川优奈aav一区二区| 日本在线精品视频| 国产mv久久久| 欧美不卡视频一区发布| 欧美性高潮床叫视频| 国产一区二区三区在线视频| 久久成人国产精品| 97av视频在线| 亚洲欧美资源在线| 国产亚洲欧洲高清| 亚洲欧美日韩中文在线制服| 国产在线观看精品一区二区三区| 亚洲天堂av在线免费| 91热精品视频| 久久成人精品一区二区三区| 色综合视频一区中文字幕| 国产丝袜一区二区三区| 91精品久久久久久久久久| 精品亚洲一区二区三区四区五区| 国产精品精品久久久| 中文字幕日韩av| 欧美美女18p| 中文字幕欧美在线| 亚洲春色另类小说| 亚洲aa中文字幕| 日韩中文字幕第一页| 精品动漫一区二区三区| 久久久久久久久久久免费精品| 庆余年2免费日韩剧观看大牛| 中文字幕一区二区三区电影| 亚洲aaa激情| 亚洲自拍欧美色图| 深夜福利一区二区| 91精品国产高清久久久久久久久| 青草青草久热精品视频在线网站| 日韩精品在线视频美女| 亚洲人a成www在线影院| 色与欲影视天天看综合网| 草民午夜欧美限制a级福利片|