&& 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.1RUN: 编译安装node
tar -xf "node-v$NODE_VERSION.tar.xz"
&& cd "node-v$NODE_VERSION"
&& ./configure
&& make -j$(getconf _NPROCESSORS_ONLN)
&& make install 如果不需要npm, 可以替换第三行为
&& ./configure --without-npm
$NODE_VERSION: 指node版本,如6.10.1RUN: 清理
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.1CMD: 设置镜像入口为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”










