balenalib/imx8m-var-dart-alpine-node!balenalogo
该镜像属于balena.io的物联网设备基础镜像系列,专为物联网设备环境优化设计。它主要适用于balena.io平台和balenaOS操作系统,同时也可在其他支持相应架构的Docker环境中运行。作为集成Node.js运行时的基础镜像,它结合了balenalib基础镜像的核心特性与Node.js的功能,为物联网应用开发提供可靠的运行环境。
便捷包管理工具:提供install_packages脚本,可抽象底层包管理器差异,自动以最小依赖安装指定软件包(忽略可选依赖),安装后清理包管理器元数据,并在安装失败时自动重试。
动态设备支持:默认ENTRYPOINT为/usr/bin/entry.sh,通过检查UDEV环境变量(设置ENV UDEV=1启用),自动启动udevd守护进程,使动态接入的设备节点能在容器/dev目录中正常显示。
更多特性详情请参见官方特性概述。
balenalib镜像提供多种变体以满足不同使用场景:
:<version> 或 :<version>-run默认镜像变体,采用精简设计,仅包含运行时必需组件,体积小巧,适合部署阶段使用。
:<version>-build构建专用变体,包含丰富的源代码构建工具,减少手动安装依赖的需求,有助于减小整体镜像体积。
了解更多变体差异
Node.js是一个用于构建可扩展服务器端和网络应用的软件平台,采用JavaScript编写,可在Mac OS X、Windows和Linux系统的Node.js运行时中无缝运行。其核心优势包括:
更多信息请参见***Node.js条目
!Node.js logo
18.9.1 (latest)16.17.114.20.1查看Dockerfile源代码
镜像详细信息及历史版本可参考官方镜像清单文件。
在Node.js项目中创建以下Dockerfile:
dockerfile# 指定基础镜像版本 FROM balenalib/imx8m-var-dart-alpine-node:latest # 暴露应用端口(根据实际情况修改) EXPOSE 8888
构建并运行镜像:
console$ docker build -t my-nodejs-app . $ docker run -it --rm --name my-running-app my-nodejs-app
yamlversion: "2" services: node: image: "balenalib/imx8m-var-dart-alpine-node:latest" user: "node" working_dir: /home/node/app environment: - NODE_ENV=production volumes: - ./:/home/node/app expose: - "8081" command: "npm start"
启动服务:
console$ docker-compose up -d
注:此配置会将当前目录(含node_modules)挂载至容器,需确保项目中存在定义启动脚本的
package.json文件。
对于简单项目,可直接运行Node.js脚本:
console$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/app -w /usr/src/app balenalib/imx8m-var-dart-alpine-node:latest node your-daemon-or-script.js
如遇镜像使用问题,请通过GitHub Issues提交反馈。
欢迎提交新功能、错误修复或更新。重大贡献建议先通过GitHub Issues讨论设计方案。

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务