CICD实例:nodejs 程序的自动化构建

本文介绍 nodejs 程序的自动化构建,包括 x86 和 arm 平台。

环境描述

利用 Docker 多阶段构建方法。使用如下镜像:

1
2
3
4
5
6
7
构建阶段镜像:
node 10.22.0-stretch 1e318dc8ae6f 2 months ago 911MB
arm32v7/node 10.22.0-stretch b697c995167b 3 months ago 744MB

运行阶段镜像:
node 10.22.0-alpine 8e473595b853 4 months ago 83.5MB
arm32v7/node 10.22.0-alpine cf3a24984912 4 months ago 75.2MB

nodejs 程序使用 package.json 指定依赖库。

CICD 配置

选用 CircleCI 执行 CI 脚本。
CircleCI 配置文件如下:

1

CI 脚本如下:

1
2
docker run -it --rm  --name armhfbusybox -v /usr/bin/qemu-arm-static:/usr/bin/qemu-arm-static armhf/busybox

工程仓库

问题及解决

参考