
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
提供了一种灵活的策略,通过重用相同镜像为特定容器分配角色。处理大量进程时,最佳选择是拆分为多个容器,每个容器在服务器上具有特定角色,可独立扩展。
supervisord启动为容器分配特定角色。对于JOB或ALL角色,Laravel Horizon是必需的。
| 值 | 描述 |
|---|---|
| APP(默认) | php-fpm + nginx |
| JOBS | php-fpm + horizon队列 + 调度器 |
| ALL | 一体化(包含所有服务) |
| 键 | 描述 |
|---|---|
| GITHUB_OAUTH_KEY | 用于解决GitHub速率限制问题 |
单容器一体化部署
使用CONTAINER_ROLE=ALL,在同一容器中运行所有服务。
yaml# docker-compose.yml services: # nginx + php-fpm + horizon队列 + 调度器 app: image: robsontenorio/laravel environment: - CONTAINER_ROLE=ALL volumes: - .:/var/www/app ports: - 8080:8080 # 其他服务(如mysql、redis等)
多容器拆分部署
将不同角色拆分到多个容器。
yaml# docker-compose.yml services: # php-fpm + nginx app: image: robsontenorio/laravel environment: - CONTAINER_ROLE=APP volumes: - .:/var/www/app ports: - 8080:8080 # php-fpm + horizon队列 + 调度器 jobs: image: robsontenorio/laravel environment: - CONTAINER_ROLE=JOBS volumes: - .:/var/www/app # 其他服务(如mysql、redis等)
适用于基于Docker的部署平台。镜像依赖/usr/local/bin/start脚本启动所有服务。
推荐目录结构
.docker/ |__ deploy.sh # 生产环境部署脚本 |__ Dockerfile # 生产环境Dockerfile |__ docker-compose.yml # 开发环境配置 app/ |__ ... # Laravel应用代码
部署脚本示例(deploy.sh)
用于在容器启动前运行额外命令。
bash#!/bin/sh set -e echo '开始部署任务...' php artisan config:cache php artisan migrate --seed --force # 其他命令... echo '部署完成!'
Dockerfile示例
dockerfileFROM robsontenorio/laravel COPY . . RUN chmod a+x .docker/deploy.sh # 启动前运行部署任务 CMD ["/bin/sh", "-c", ".docker/deploy.sh && /usr/local/bin/start"]
容器角色配置
根据部署平台设置环境变量:
CONTAINER_ROLE=APP(默认,无需设置)CONTAINER_ROLE=JOBSCONTAINER_ROLE=ALLyamlimage: robsontenorio/laravel # 所有步骤使用此镜像 stages: - build - test - deploy # 安装PHP依赖 composer: stage: build ... # 安装JS依赖 yarn: stage: build ... # PHP测试 phpunit: stage: test dependencies: - composer - yarn ... # 构建生产环境Docker镜像并推送(可选) production: stage: deploy image: docker:latest only: - tags script: - docker login <凭据> - docker build <Dockerfile路径> - docker push <镜像仓库>
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务