
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像专为CircleCI持续集成/持续部署(CI/CD)作业设计,基于官方NodeJS镜像构建,集成了CircleCI环境所需的预配置文件和辅助脚本。旨在简化NodeJS项目在CircleCI流程中的环境准备工作,减少重复配置,提升CI/CD效率。
node_modules缓存路径),优化依赖安装速度ci-install-deps:加速依赖安装脚本,支持依赖缓存检测与复用ci-run-tests:标准化测试执行流程,自动生成CircleCI兼容的测试报告ci-build-project:封装构建逻辑,支持自定义构建命令注入ci-cleanup:作业结束后清理临时文件,减少磁盘空间占用--slim标签变体,进一步缩减镜像大小(适用于资源受限环境)镜像通常托管于私有仓库(如公司内部Docker Registry)或Docker Hub,通过标签指定NodeJS版本:
bash# 拉取指定版本(例如NodeJS 18.x) docker pull docker.xuanyuan.run/[仓库地址]/nodejs-circleci:18 # 拉取轻量版本 docker pull docker.xuanyuan.run/[仓库地址]/nodejs-circleci:18-slim
本地测试(模拟CircleCI环境)
bash# 挂载项目目录并运行测试脚本 docker run --rm -v $(pwd):/app -w /app docker.xuanyuan.run/[仓库地址]/nodejs-circleci:18 \ sh -c "./ci-install-deps && ./ci-run-tests"
CircleCI配置文件中引用
在.circleci/config.yml中指定本镜像作为作业执行环境:
yamlversion: 2.1 jobs: test: docker: - image: [仓库地址]/nodejs-circleci:18 # 使用本镜像 steps: - checkout # 拉取代码 - run: ci-install-deps # 使用内置脚本安装依赖 - run: ci-run-tests # 使用内置脚本执行测试 - store_test_results: # 收集测试报告(依赖预配置的Artifacts路径) path: test-results
通过环境变量自定义镜像行为:
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
NODE_ENV | NodeJS运行环境 | test(CI环境默认) |
NPM_REGISTRY | 自定义npm仓库地址(加速依赖安装) | https://registry.npmjs.org |
DEPENDENCY_CACHE | 是否启用依赖缓存(true/false) | true |
TEST_REPORT_PATH | 测试报告输出路径 | ./test-results |
NODE_VERSION | 覆盖镜像默认NodeJS版本(部分标签支持) | 镜像标签指定版本 |
配置示例(CircleCI中设置环境变量)
yamljobs: build: docker: - image: [仓库地址]/nodejs-circleci:18 environment: NPM_REGISTRY: "https://registry.npm.taobao.org" # 使用淘宝npm镜像 DEPENDENCY_CACHE: "true" steps: - checkout - run: ci-install-deps # 将使用自定义npm仓库安装依赖
ci-install-deps
package-lock.json/yarn.lock/pnpm-lock.yaml哈希,命中缓存时直接复用node_modulesbashci-install-deps # 自动检测包管理器并安装依赖
ci-run-tests
--coverage(生成覆盖率报告)、--verbose(详细日志)bashci-run-tests --coverage # 执行测试并生成覆盖率报告
ci-build-project
BUILD_CMD(自定义构建命令,默认读取package.json的build脚本)bashBUILD_CMD="npm run build:prod" ci-build-project # 自定义构建命令
镜像通过标签区分NodeJS版本及特性:
| 标签格式 | 说明 | 示例 |
|---|---|---|
{node-version} | 标准版本,包含完整功能 | 18, 20 |
{node-version}-slim | 轻量版本,移除部分非必要工具 | 18-slim, 20-slim |
{node-version}-alpine | 基于Alpine Linux,最小镜像体积 | 18-alpine, 20-alpine |
latest | 指向最新稳定NodeJS版本的标准镜像 | - |
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务