本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
该镜像属于balena.io基础镜像系列,专为物联网(IoT)设备设计并优化。它针对balena.io平台和balenaOS系统进行了深度适配,同时也可在任何支持相应架构的Docker环境中运行。作为Node.js基础镜像,适用于开发和部署物联网设备上的Node.js应用程序。
!balena logo
balenalib基础镜像具备以下关键特性:
install_packages 包管理脚本:简化包安装流程的工具,抽象底层包管理器差异。可自动以最小依赖(忽略可选依赖)安装指定包,清理包管理器元数据,并在安装失败时重试。
动态设备支持:默认ENTRYPOINT为ENTRYPOINT ["/usr/bin/entry.sh"],通过设置ENV UDEV=1可启用udevd守护进程,使容器能动态识别并显示/dev目录中的设备节点。
更多特性详情,请参阅特性概述文档。
balenalib镜像提供多种变体以满足不同使用场景:
:<version> 或 :<version>-run默认镜像变体,设计为精简的运行时环境,仅包含应用运行必需的组件,体积小巧。
:<version>-build包含构建工具的重型镜像,预装大量源代码构建所需工具,减少Dockerfile中手动安装的包数量,从而减小系统总体镜像体积。
了解更多变体信息
适用于物联网设备开发,特别是基于balena.io平台的项目,需在嵌入式设备上运行Node.js应用的场景,包括但不限于:
快速入门指南可帮助您开始使用该基础镜像,同时提供示例项目展示balena平台的应用可能性。
Node.js是用于构建可扩展服务器端和网络应用的软件平台。应用程序使用JavaScript编写,可在Mac OS X、Windows和Linux的Node.js运行时中无缝运行。
Node.js应用通过非阻塞I/O和异步事件模型实现高吞吐量和效率,采用单线程执行模型,同时使用多线程处理文件和网络事件。因其异步特性,常用于开发实时应用程序。
Node.js内部使用Google V8 JavaScript引擎执行代码,大部分基础模块采用JavaScript编写,内置异步I/O库支持文件、套接字和HTTP通信,无需Apache等额外软件即可作为Web服务器运行。
***.org/wiki/Node.js
!Node.js logo
18.7.0 (latest)、16.17.0、14.20.0、12.22.12
有关镜像及其历史的更多信息,请查看balena-io-library/official-images GitHub仓库中的相关清单文件(asus-tinker-board-s-alpine-node)。
在Node.js应用项目中创建以下Dockerfile:
# 指定所需版本的Node.js基础镜像 FROM balenalib/asus-tinker-board-s-alpine-node:latest # 暴露应用默认端口(根据实际情况修改) EXPOSE 8888
构建并运行镜像:
$ docker build -t my-nodejs-app . $ docker run -it --rm --name my-running-app my-nodejs-app
version: "2" services: node: image: "balenalib/asus-tinker-board-s-alpine-node:latest" user: "node" working_dir: /home/node/app environment: - NODE_ENV=production volumes: - ./:/home/node/app # 挂载当前目录到容器 expose: - "8081" # 暴露内部端口 command: "npm start" # 启动命令
使用Docker Compose启动:
$ docker-compose up -d
注:此配置假设项目包含
package.json文件并定义了start脚本。
对于单文件项目,可直接运行脚本:
$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/app -w /usr/src/app balenalib/asus-tinker-board-s-alpine-node:latest node your-daemon-or-script.js
如遇问题或疑问,请通过GitHub Issue联系我们。
欢迎贡献新功能、修复或更新(无论大小)。我们鼓励在编码前通过GitHub Issue讨论您的计划,以获取反馈和避免重复工作。
镜像文档存储在基础镜像文档中。有关balenalib新特性的更多信息,请参阅博客文章。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429