
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Meteor Docker镜像是专为简化Meteor应用部署而设计的容器化解决方案。该镜像基于官方Node.js基础镜像构建,内置Meteor工具链及运行时依赖,可快速构建、打包和运行Meteor全栈JavaScript应用。
meteor build优化参数,减少构建产物体积bash# 拉取最新稳定版 docker pull meteor/meteor:latest # 拉取指定Meteor版本(如2.14) docker pull meteor/meteor:2.14-node18
4.3.1 基础构建流程
bash# 进入应用源码目录 cd /path/to/meteor-app # 启动构建容器(挂载源码目录) docker run -it --rm \ -v $(pwd):/app \ -w /app \ meteor/meteor:latest \ meteor build --directory /app/build --architecture os.linux.x86_64
4.3.2 构建产物说明
构建完成后,/app/build目录下生成:
bundle/:应用打包文件(包含服务端代码、客户端资源、依赖清单)README:部署说明文档4.4.1 直接运行(开发环境)
bashdocker run -it --rm \ -p 3000:3000 \ -v $(pwd):/app \ -w /app \ -e ROOT_URL=http://localhost:3000 \ -e MONGO_URL=mongodb://mongo:27017/meteor \ meteor/meteor:latest \ meteor run
4.4.2 基于构建产物运行(生产环境)
需先进入构建产物目录:
bashcd /path/to/meteor-app/build/bundle/programs/server npm install --production # 安装生产依赖 # 启动运行容器 docker run -d \ --name meteor-app \ -p 3000:3000 \ -v $(pwd)/../../../:/app \ -w /app/bundle \ -e NODE_ENV=production \ -e ROOT_URL=https://your-app-domain.com \ -e MONGO_URL=mongodb://user:pass@mongo-host:27017/dbname?authSource=admin \ node:18-alpine \ node main.js
| 变量名 | 说明 | 示例值 |
|---|---|---|
ROOT_URL | 应用基础URL(必需) | https://app.example.com |
MONGO_URL | MongoDB连接字符串(必需) | mongodb://mongo:27017/meteor |
NODE_ENV | 运行环境类型 | production(默认)/development |
PORT | 应用监听端口 | 3000(默认) |
MAIL_URL | 邮件服务配置(如需发送邮件) | smtp://user:pass@smtp.example.com:587 |
METEOR_SETTINGS | JSON格式的应用配置 | '{"public": {"apiUrl": "/api"}}' |
| 变量名 | 说明 | 默认值 |
|---|---|---|
METEOR_NO_RELEASE_CHECK | 禁用Meteor版本检查 | false |
NODE_OPTIONS | Node.js运行参数 | --max-old-space-size=4096(4GB内存限制) |
bashdocker run -d \ --name meteor-prod \ --restart always \ -p 80:3000 \ -e ROOT_URL=http://example.com \ -e MONGO_URL=mongodb://mongo-host:27017/prod-db \ -e NODE_ENV=production \ -v /data/meteor/logs:/app/logs \ meteor/meteor:2.14-node18 \ node /app/bundle/main.js
创建docker-compose.yml:
yamlversion: '3.8' services: meteor: image: meteor/meteor:2.14-node18 restart: always ports: - "3000:3000" environment: - ROOT_URL=https://app.example.com - MONGO_URL=mongodb://mongo:27017/meteor - NODE_ENV=production - METEOR_SETTINGS={"public": {"analytics": true}} volumes: - ./build/bundle:/app/bundle - meteor_logs:/app/logs depends_on: - mongo user: "1000:1000" # 非root用户运行 mongo: image: mongo:5.0 restart: always volumes: - mongo_data:/data/db command: --wiredTigerCacheSizeGB 1 # 限制内存使用 volumes: meteor_logs: mongo_data:
启动命令:
bashdocker-compose up -d
--memory、--cpus参数)user参数使用非root用户,避免挂载敏感目录到容器内meteor --version输出一致,避免构建错误您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务