如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
🔋 (PHP/CakePHP) 生产就绪的Docker镜像,包含CakePHP自动安装器。
该Docker镜像提供Debian和Alpine两种版本。
shinsenter/cakephp5是基于https://hub.docker.com/r/shinsenter/php%E9%95%9C%E5%83%8F%E6%9E%84%E5%BB%BA%E7%9A%84%E7%94%9F%E4%BA%A7%E7%BA%A7Docker%E9%95%9C%E5%83%8F%EF%BC%8C%E4%B8%93%E4%B8%BACakePHP 5框架设计。镜像集成了自动CakePHP安装器,支持通过环境变量灵活配置PHP和PHP-FPM参数,无需重建镜像即可调整配置。同时内置最新版Composer,可快速启动CakePHP项目开发或部署流程,适用于从项目初始化到生产环境部署的全流程需求。
该镜像基于https://hub.docker.com/r/shinsenter/php%E6%9E%84%E5%BB%BA%EF%BC%8C%E5%A6%82%E9%9C%80%E8%87%AA%E5%AE%9A%E4%B9%89PHP%E9%85%8D%E7%BD%AE%EF%BC%88%E5%A6%82%E6%89%A9%E5%B1%95%E3%80%81%E5%86%85%E5%AD%98%E9%99%90%E5%88%B6%E7%AD%89%EF%BC%89%EF%BC%8C%E5%8F%AF%E5%8F%82%E8%80%83%E5%85%B6%E5%AE%98%E6%96%B9%E6%96%87%E6%A1%A3%E3%80%82
当挂载空目录到容器时,镜像会自动检测并下载CakePHP框架源码,快速完成项目初始化。
步骤
在宿主机创建空目录用于存放项目代码:
shellmkdir cakephp5
运行容器并挂载该目录:
shelldocker run -p 80:80 -p 443:443 -p 443:443/udp \ -v ./cakephp5:/var/www/html \ shinsenter/cakephp5:latest
容器会检测到/var/www/html为空,自动克隆CakePHP框架源码到该目录,完成项目初始化。
将宿主机上的现有CakePHP项目目录挂载到容器的/var/www/html路径,即可直接运行项目。由于采用卷挂载方式,宿主机代码修改会实时同步至容器内,支持开发调试和生产部署。
shelldocker run -p 80:80 -p 443:443 -p 443:443/udp \ -v /path/to/your/existing/cakephp/project:/var/www/html \ shinsenter/cakephp5:latest
镜像内置测试用SSL证书(位于/etc/ssl/site/server.crt和/etc/ssl/site/server.key),生产环境需替换为有效证书。以下是三种替换方式:
方法1:通过Dockerfile构建
dockerfileFROM shinsenter/cakephp5:latest # 复制自定义证书到容器 COPY my_domain.crt /etc/ssl/site/server.crt COPY my_domain.key /etc/ssl/site/server.key # 可选:添加项目代码(如未通过卷挂载) # ADD --chown=$APP_USER:$APP_GROUP ./your-project/ /var/www/html/
方法2:通过docker run命令挂载
shelldocker run -p 80:80 -p 443:443 -p 443:443/udp \ -v ./cakephp5:/var/www/html \ -v ./my_domain.crt:/etc/ssl/site/server.crt \ -v ./my_domain.key:/etc/ssl/site/server.key \ shinsenter/cakephp5:latest
方法3:通过docker-compose配置
yamlservices: web: image: shinsenter/cakephp5:latest ports: - "80:80" - "443:443" - "443:443/udp" volumes: - ./cakephp5:/var/www/html - ./my_domain.crt:/etc/ssl/site/server.crt - ./my_domain.key:/etc/ssl/site/server.key
由于基础镜像(PHP、OS、Composer等)会定期更新,同一标签(如latest)的镜像内容可能变化。为确保生产环境稳定性,建议将镜像标记为自定义稳定版本:
shell# 拉取最新镜像 docker pull shinsenter/cakephp5:latest # 标记为稳定版本 docker tag shinsenter/cakephp5:latest your-repo/cakephp5:stable # 推送至私有仓库(如需要) docker push your-repo/cakephp5:stable
生产环境中使用your-repo/cakephp5:stable作为基础镜像,避免因上游更新导致环境变化。
如发现该镜像有用,可通过 *** ***支持,或在 GitHub 提交issue反馈问题。您的支持将帮助维护和改进这些镜像。
本项目基于 GNU General Public License v3.0 许可。如使用或借鉴本项目的思路,请给予适当的引用和 credit。
来自越南 🇻🇳 的爱心贡献。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务