专属域名
文档搜索
提交工单
轩辕助手
Run助手
返回顶部
快速返回页面顶部
收起
收起工具栏

openruntimes/node Docker 镜像 - 轩辕镜像

node
openruntimes/node
Node无服务器运行时Docker镜像,用于快速部署和运行基于Node.js的无服务器应用,提供轻量级环境、资源优化及快速冷启动能力,简化无服务器应用的开发与运维流程。
0 次下载activeopenruntimes镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

Node Serverless Runtime Docker镜像文档

1. 镜像概述和主要用途

Node Serverless Runtime Docker镜像是一个基于Node.js的专用无服务器运行时环境,旨在简化基于Node.js的无服务器应用(Serverless Application)的部署、运行和管理。该镜像整合了无服务器架构的核心需求,提供轻量级运行环境,适用于开发、测试及生产环境,有效解决传统部署流程复杂、资源利用率低、冷启动速度慢等问题,帮助开发者快速构建和交付事件驱动型应用。

2. 核心功能和特性

2.1 兼容性与可靠性
  • 基于官方Node.js镜像构建,严格遵循Node.js版本规范,确保与主流Node.js应用框架(如Express、Koa、NestJS)及依赖库的兼容性。
  • 定期同步官方Node.js安全更新,内置基础安全加固,降低运行时风险。
2.2 轻量级与资源优化
  • 采用精简基础镜像(如Alpine Linux),最小化镜像体积(通常<200MB),减少服务器资源占用。
  • 优化文件系统层级,剔除冗余依赖,提升容器启动速度和运行效率。
2.3 无服务器场景适配
  • 支持快速冷启动(Cold Start),针对无服务器应用“按需运行”特性优化,平均冷启动时间<500ms。
  • 内置请求处理池化机制,提升并发请求处理能力,适配流量波动场景。
2.4 开发与运维便捷性
  • 内置基础依赖管理工具(如npm、yarn),支持应用依赖自动安装。
  • 支持环境变量动态注入,灵活配置应用参数(如API密钥、数据库连接串等)。
  • 兼容主流无服务器框架(Serverless Framework、AWS SAM、Azure Functions Core Tools等),可无缝集成现有Serverless工作流。

3. 使用场景和适用范围

3.1 典型使用场景
  • 无服务器函数开发与测试:本地快速验证Node.js函数逻辑,模拟云端无服务器环境。
  • 轻量级API服务部署:构建基于HTTP/HTTPS的微服务API,适用于低流量到中流量场景。
  • 事件驱动型应用:处理定时任务(如数据备份、日志清理)、消息队列消费(如Kafka、RabbitMQ)、文件上传/下载触发逻辑等。
  • CI/CD流程集成:作为自动化测试环境,在流水线中快速部署应用并执行单元测试、集成测试。
3.2 适用范围
  • 开发团队:需快速迭代无服务器应用的前端/全栈开发团队。
  • 应用类型:中小型Node.js应用、事件驱动型函数、轻量级API服务。
  • 环境需求:支持Docker的任意环境(物理机、虚拟机、Kubernetes集群、云服务器等)。

4. 使用方法和配置说明

4.1 获取镜像

通过Docker Hub拉取最新版本镜像(假设镜像名称为node-serverless-runtime,实际使用时需替换为具体镜像仓库地址):

bash
docker pull node-serverless-runtime:latest

如需指定Node.js版本,可使用标签(如node-serverless-runtime:18-alpine对应Node.js 18 Alpine版本)。

4.2 基本运行命令
4.2.1 快速启动无服务器应用

将本地Node.js应用代码(假设入口文件为handler.js,位于当前目录的app文件夹下)挂载到容器内,并启动服务:

bash
docker run -d \
  --name node-serverless-app \
  -p 3000:3000 \  # 映射容器端口3000到宿主机端口3000
  -v $(pwd)/app:/app \  # 挂载本地应用代码目录到容器内/app
  -e NODE_ENV=production \  # 设置环境变量
  node-serverless-runtime:latest
4.2.2 验证运行状态
  • 查看容器日志:
    bash
    docker logs -f node-serverless-app
    
  • 访问应用(假设应用监听HTTP端口3000):
    bash
    curl http://localhost:3000
    
4.3 Docker Compose配置示例

创建docker-compose.yml文件,定义多环境配置(如开发/生产环境隔离):

yaml
version: '3.8'

services:
  node-serverless:
    image: node-serverless-runtime:18-alpine  # 指定Node.js 18 Alpine版本
    container_name: node-serverless-app
    restart: always  # 异常退出时自动重启
    ports:
      - "3000:3000"  # API服务端口
      - "9229:9229"  # Node.js调试端口(可选,用于开发环境)
    volumes:
      - ./app:/app  # 挂载应用代码
      - ./node_modules:/app/node_modules  # 持久化依赖(避免重复安装)
    environment:
      - NODE_ENV=production  # 环境类型:development/production/test
      - PORT=3000  # 应用监听端口
      - LOG_LEVEL=info  # 日志级别:debug/info/warn/error
      - DB_CONN_STR=mysql://user:password@db:3306/appdb  # 示例:数据库连接串(需替换为实际值)
    depends_on:  # 依赖服务(如数据库,可选)
      - db

  # 示例:依赖的数据库服务(可选,根据应用需求配置)
  db:
    image: mysql:8.0
    environment:
      - MYSQL_ROOT_PASSWORD=password
      - MYSQL_DATABASE=appdb

启动命令:

bash
docker-compose up -d  # 后台启动服务
docker-compose logs -f  # 查看所有服务日志
4.4 环境变量配置说明

容器支持通过-e参数或environment字段注入环境变量,常用配置如下:

环境变量名描述默认值可选值
NODE_ENV应用运行环境developmentdevelopment/production/test
PORT应用监听端口30001-65535(未被占用端口)
LOG_LEVEL日志输出级别infodebug/info/warn/error
APP_DIR容器内应用代码目录/app容器内合法路径
NODE_OPTIONSNode.js运行时参数(如内存限制)--max-old-space-size=256例如--inspect=0.0.0.0:9229(调试模式)
HANDLER_ENTRY应用入口文件路径/app/handler.js相对于APP_DIR的路径,如src/index.js
4.5 高级配置:自定义启动命令

如需覆盖默认启动逻辑(如指定自定义启动脚本),可通过docker run的command参数或docker-compose.yml的command字段实现。例如,使用自定义启动脚本start.sh:

bash
# 本地app目录下创建start.sh(需赋予执行权限:chmod +x app/start.sh)
#!/bin/sh
echo "Starting app with custom script..."
npm install  # 安装依赖
node --inspect=0.0.0.0:9229 $HANDLER_ENTRY  # 启动应用并开启远程调试

# 启动容器时指定自定义命令
docker run -d \
  -v $(pwd)/app:/app \
  -e HANDLER_ENTRY=/app/src/index.js \
  node-serverless-runtime:latest \
  /app/start.sh

5. 注意事项

  • 版本选择:生产环境建议指定具体Node.js版本标签(如18-alpine),避免因镜像自动更新导致兼容性问题。
  • 持久化数据:应用依赖(node_modules)、日志等需持久化时,通过-v挂载宿主机目录,避免容器重建后数据丢失。
  • 资源限制:根据应用需求通过--memory(内存)、--cpus(CPU)参数限制容器资源,避免过度占用宿主机资源。
  • 安全最佳实践:生产环境建议使用非root用户运行容器(通过--user参数指定),并限制容器网络权限(如使用--network隔离网络)。
查看更多 node 相关镜像 →
node logo
node
by library
官方
Node.js是一个基于JavaScript的跨平台运行时环境,主要用于构建高效的服务器端和网络应用程序,它采用单线程、非阻塞I/O及事件驱动模型,依托Chrome V8引擎实现快速代码执行,能够高效处理大量并发请求,广泛适用于实时通信系统、API服务、微服务架构等场景,让开发者可使用JavaScript同时进行前后端开发,显著提升开发效率与系统性能。
140871B+ pulls
上次更新:11 天前
bitnami/node logo
bitnami/node
by VMware
认证
Bitnami 提供的 Node.js 安全镜像,基于 Photon Linux 构建,具有强化安全特性、最小漏洞、合规支持和供应链安全保障,适用于快速部署安全可靠的 Node.js 应用。
8310M+ pulls
上次更新:28 天前
cimg/node logo
cimg/node
by CircleCI
认证
CircleCI Node.js Docker便捷镜像是为Node.js项目提供的预配置Docker镜像,旨在简化CI/CD流程中的环境设置,方便开发者快速集成和部署应用。
26500M+ pulls
上次更新:30 天前
kindest/node logo
kindest/node
by sigs.k8s.io/kind
[***] node image 是 Kubernetes 特殊兴趣小组(SIGs)旗下 kind(Kubernetes IN Docker)项目的节点镜像,其以 Docker 容器形式运行 Kubernetes 节点,支持用户在本地快速部署和运行 Kubernetes 集群,适用于 Kubernetes 相关功能的开发、测试与学习场景。
116100M+ pulls
上次更新:23 天前
okteto/node logo
okteto/node
by Okteto
认证
用于与Okteto CLI配合的Node.js开发环境镜像,适用于在Kubernetes环境中进行Node.js应用的开发、调试与测试。
21M+ pulls
上次更新:8 天前
chainguard/node logo
chainguard/node
by Chainguard, Inc.
认证
Chainguard的低至零CVE容器镜像,用于构建、交付和运行安全软件。
1100K+ pulls
上次更新:5 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
openruntimes/node
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429