轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
centos/nodejs-12-centos7
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

nodejs-12-centos7 Docker 镜像下载 - 轩辕镜像

nodejs-12-centos7 镜像详细信息和使用指南

nodejs-12-centos7 镜像标签列表和版本信息

nodejs-12-centos7 镜像拉取命令和加速下载

nodejs-12-centos7 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

nodejs-12-centos7
centos/nodejs-12-centos7

nodejs-12-centos7 镜像详细信息

nodejs-12-centos7 镜像标签列表

nodejs-12-centos7 镜像使用说明

nodejs-12-centos7 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

用于构建和运行Node.js 12应用程序的平台,作为源代码到镜像(S2I)基础镜像,支持RHEL、CentOS、Fedora基础,可通过podman或docker运行,适用于快速构建高效、可扩展的网络应用。
5 收藏0 次下载activecentos镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

nodejs-12-centos7 镜像详细说明

nodejs-12-centos7 使用指南

nodejs-12-centos7 配置说明

nodejs-12-centos7 官方文档

NodeJS 12 容器镜像

该容器镜像包含Node.JS 12,作为您Node.JS 12应用程序的源代码到镜像(S2I)基础镜像。用户可选择基于RHEL、CentOS或Fedora的镜像。RHEL镜像可在Red Hat容器目录获取,CentOS镜像可在Quay.io获取,Fedora镜像可在Fedora Registry获取。生成的镜像可使用podman运行。

注意:尽管本README中的示例使用podman,但您可以将所有此类调用替换为docker,参数保持不变。

描述

Node.js 12容器镜像作为基础平台,用于构建和运行各种Node.js 12应用程序和框架。Node.js是基于Chrome JavaScript运行时构建的平台,便于构建快速、可扩展的网络应用程序。Node.js采用事件驱动、非阻塞I/O模型,使其轻量高效,非常适合在分布式设备上运行的数据密集型实时应用程序。

在OpenShift中使用

本示例假设您使用ubi8/nodejs-12镜像,该镜像可通过OpenShift中的nodejs:12镜像流标签获取。

构建应用

要在OpenShift中构建简单的nodejs-sample-app应用程序:

oc new-app nodejs:12~[***]

访问应用

$ oc get pods
$ oc exec <pod> -- curl 127.0.0.1:8080

源代码到镜像(S2I)框架和脚本

该镜像支持OpenShift中的源代码到镜像(S2I)策略。S2I是一个OpenShift框架,便于编写接收应用源代码作为输入、使用构建器镜像(如本Node.js容器镜像)并生成运行组装后应用的新镜像。

为支持S2I框架,构建器镜像中包含以下重要脚本:

  • /usr/libexec/s2i/assemble:用于生成包含应用工件的新镜像。该脚本接收应用源代码并将其放置到镜像内的适当目录,利用Node.js应用开发中的常见模式(见下文“环境变量”部分)。
  • /usr/libexec/s2i/run:作为生成的容器镜像(包含应用工件的新镜像)的默认命令。在生产环境中运行npm run,若DEV_MODE设为true则使用nodemon(见下文“环境变量”部分)。

使用Dockerfile构建应用

与S2I策略相比,使用Dockerfile是构建包含应用的Node.js容器镜像的更灵活方式。当S2I不够灵活或在OpenShift环境外构建镜像时,可使用Dockerfile。

按照以下步骤使用Node.js镜像创建Dockerfile:

1. 拉取基础构建器镜像

podman pull ubi8/nodejs-12

本示例使用UBI镜像ubi8/nodejs-12,该镜像可根据UBI最终用户许可协议(EULA)自由使用和再分发。有关UBI的更多信息,请参见UBI常见问题。

2. 拉取应用代码

此处使用位于[***]

git clone [***] app-src

3. 在容器内准备应用

此步骤通常至少包括以下部分:

  • 将应用源代码放入容器
  • 安装依赖
  • 设置生成镜像的默认命令

对于这三个部分,用户可选择在Dockerfile中手动设置并显式使用nodejs和npm命令(见3.1),或使用镜像中的S2I脚本(见3.2,有关这些脚本的更多信息见上文“源代码到镜像框架和脚本”部分),S2I脚本已了解如何设置和运行常见Node.js应用。

3.1. 使用自定义设置

创建包含以下内容的Dockerfile:

FROM ubi8/nodejs-12

# 添加应用源代码
ADD app-src .

# 安装依赖
RUN npm install

# 运行脚本使用标准方式启动应用
CMD npm run -d start

3.2. 使用S2I脚本

创建包含以下内容的Dockerfile:

FROM ubi8/nodejs-12

# 将应用源代码添加到assemble脚本预期的目录,并设置权限以非root用户运行容器
USER 0
ADD app-src /tmp/src
RUN chown -R 1001:0 /tmp/src
USER 1001

# 安装依赖
RUN /usr/libexec/s2i/assemble

# 设置生成镜像的默认命令
CMD /usr/libexec/s2i/run

4. 从准备好的Dockerfile构建新镜像

podman build -t node-app .

5. 运行包含最终应用的镜像

podman run -d node-app

源代码到镜像(S2I)的环境变量

应用开发人员可使用以下环境变量在OpenShift中配置此镜像的运行时行为:

NODE_ENV
NodeJS运行模式(默认:"production")

DEV_MODE
设为"true"时,将使用nodemon在开发过程中自动重新加载服务器(默认:"false")。将DEV_MODE设为"true"会将NODE_ENV默认值改为"development"(若未显式设置)。

NPM_RUN
选择在package.json文件的scripts部分定义的备用/自定义运行模式(默认:npm run "start")。使用DEV_MODE时,这些用户定义的运行脚本不可用。

HTTP_PROXY
在组装期间使用npm代理

HTTPS_PROXY
在组装期间使用npm代理

NPM_MIRROR
在构建过程中使用自定义NPM registry镜像下载包

定义环境变量的一种方式是在仓库的.s2i/environment文件中包含键值对。

示例:DATABASE_USER=sampleUser

注意:定义自定义“DEV_MODE”

以下package.json示例包含scripts.dev条目。您可在应用的package.json文件中定义自己的自定义NPM_RUN脚本。

注意:设置日志输出详细程度

要更改npm install期间的日志输出级别,可设置npm_config_loglevel环境变量。详见npm-config。

开发模式

该镜像支持开发模式,可通过环境变量DEV_MODE切换,取值为true或false。开发模式支持以下特性:

  • 热部署
  • 调试

调试端口可通过环境变量DEBUG_PORT指定,仅当DEV_MODE=true时有效。

在开发模式下运行容器的简单示例命令:

podman run --env DEV_MODE=true my-image-id

要在开发模式下运行容器并设置调试端口为5454:

$ podman run --env DEV_MODE=true DEBUG_PORT=5454 my-image-id

在生产模式下运行容器:

$ podman run --env DEV_MODE=false my-image-id

默认情况下,DEV_MODE设为false,DEBUG_PORT设为5858,但DEBUG_PORT仅在DEV_MODE=true时生效。

热部署

作为开发模式的一部分,该镜像支持热部署。启用开发模式后,运行中容器内源代码的任何更改将立即反映在运行的Node.js应用中。

使用Podman的exec命令

要在运行中的容器中修改源代码,使用Podman的exec命令:

$ podman exec -it <CONTAINER_ID> /bin/bash

通过podman exec进入运行中的容器后,当前目录设为/opt/app-root/src,即应用源代码所在位置。

使用OpenShift的rsync命令

若已将容器部署到OpenShift,可使用oc rsync将本地文件复制到OpenShift pod中运行的远程容器。

警告:

s2i-nodejs容器镜像的默认行为是使用npm start命令运行Node.js应用,该命令执行package.json文件中的start脚本。在开发模式下,应用使用nodemon运行。nodemon的默认行为是查找package.json文件中的main属性并执行该脚本;若main属性不存在,则执行start脚本。因此,为确保生产模式和开发模式下功能一致,用户应移除main属性。

以下是包含scripts.dev条目的package.json示例。您可在应用的package.json文件中定义自己的自定义NPM_RUN脚本:

{
    "name": "node-echo",
    "version": "0.0.1",
    "description": "node-echo",
    "main": "example.js", <--- main属性
    "dependencies": {
    },
    "devDependencies": {
        "nodemon": "*"
    },
    "engine": {
        "node": "*",
        "npm": "*"
    },
    "scripts": {
        "dev": "nodemon --ignore node_modules/ server.js",
        "start": "node server.js" <-- start脚本
    },
    "keywords": [
        "Echo"
    ],
    "license": "",
}

注意:

oc rsync仅在OpenShift 3.1+版本中可用。

另请参阅

Dockerfile和其他源代码可在[***]Dockerfile,RHEL7的为Dockerfile.rhel7,RHEL8的为Dockerfile.rhel8,Fedora的为Dockerfile.fedora。

查看更多 nodejs-12-centos7 相关镜像 →
amazon/aws-lambda-nodejs logo
amazon/aws-lambda-nodejs
by Amazon Web Services
认证
适用于NodeJS的AWS Lambda基础镜像
535M+ pulls
上次更新:5 小时前
appdynamics/nodejs-agent logo
appdynamics/nodejs-agent
by AppDynamics
认证
用于监控Node.js应用程序的代理工具,可收集性能指标、错误信息和运行状态,帮助开发者实时掌握应用健康状况与性能表现。
161M+ pulls
上次更新:3 天前
paketobuildpacks/nodejs logo
paketobuildpacks/nodejs
by Linux Foundation
暂无描述
510M+ pulls
上次更新:2 天前

常见问题

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

免费版仅支持 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 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

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

manifest unknown 错误

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

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

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

查看全部问题→

轩辕镜像下载加速使用手册

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

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.