
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
该Docker镜像集成了nginx、php-fpm、mysql、memcached和cron服务,通过supervisord管理容器内多进程。适用于快速部署需要Web服务器、PHP运行环境、数据库和缓存的应用,支持数据持久化存储和灵活的环境配置。
| 环境变量 | 描述 | 默认值 |
|---|---|---|
| PHP_MEM | php-fpm最大内存使用量 | 128M |
| MEMCACHED_MEM | memcached最大内存使用量 | 64M |
| MYSQL_DB_NAME | 数据库名称 | - |
| MYSQL_DB_USER | 数据库用户名 | - |
| MYSQL_DB_PASS | 数据库密码 | - |
| MYSQL_CHARSET | 数据库字符集 | utf8 |
| MYSQL_COLLATION | 数据库排序规则 | utf8_unicode_ci |
| MYSQLDUMP_ENABLED | 是否启用MySQL自动备份(每天23点执行,保留7天备份) | False |
| MEMCACHED_ENABLED | 是否启动memcached服务 | False |
| NGINX_X_FORWARDED_FOR | 是否启用X-FORWARD-FOR头 | False |
| GIT_WEBSITE_REPO | Git仓库URL(用于部署网站) | - |
| GIT_WEBSITE_BRANCH | Git分支名称 | - |
| GIT_WEBSITE_CRON_PULL | 是否启用定时Git拉取(每10分钟执行) | - |
若通过Git仓库部署网站,推荐参考示例仓库结构(https://github.com/robinostlund/demo-website%EF%BC%89%EF%BC%9A
/config/nginx.conf - 放置nginx配置/public_html - 放置网站根目录文件若Git仓库需要SSH密钥认证,将密钥文件放置在容器内/data/git_key/id_rsa路径。
shdocker exec <容器名称> /usr/local/bin/run.git.pull.sh
容器使用/data作为主要数据卷,结构如下:
/data ├── var/log/ # 日志目录 │ ├── nginx/ # nginx日志 │ └── mysql/ # mysql日志 ├── var/lib/ # 数据存储目录 │ └── mysql/ # mysql数据库文件 ├── var/www/ # 网站文件目录 │ └── html/ # 网站根目录 │ ├── config/ # 配置文件目录 │ └── public_html/ # 网站文件目录 └── var/backups/ # 备份目录 └── mysql/ # mysql备份文件
shdocker run -dt \ --name httptest \ --hostname httptest \ -p 8080:80 \ -v /tmp/test:/data \ -e MYSQL_DB_NAME=testdb \ -e MYSQL_DB_USER=test_user \ -e MYSQL_DB_PASS=test_pass \ -e MYSQLDUMP_ENABLED=true \ -e NGINX_X_FORWARDED_FOR=true \ -e MEMCACHED_ENABLED=true \ -e MEMCACHED_MEM=128m \ robostlund/nginx-php-mysql-static:latest
shdocker run -dt \ --name httptest \ --hostname httptest \ -p 8080:80 \ -v /tmp/test:/data \ -e MYSQL_DB_NAME=testdb \ -e MYSQL_DB_USER=test_user \ -e MYSQL_DB_PASS=test_pass \ -e MYSQLDUMP_ENABLED=true \ -e NGINX_X_FORWARDED_FOR=true \ -e MEMCACHED_ENABLED=true \ -e MEMCACHED_MEM=128m \ -e GIT_WEBSITE_REPO=https://github.com/robinostlund/demo-website.git \ -e GIT_WEBSITE_BRANCH=master \ -e GIT_WEBSITE_CRON_PULL=true \ robostlund/nginx-php-mysql-static:latest
yaml- name: 创建容器 docker_container: name: 'www01' hostname: www01 image: robostlund/nginx-php-mysql-static:latest recreate: yes pull: true ports: - "8080:80" # HTTP端口映射 volumes: - '/tmp/data:/data' # 数据持久化卷 env: MYSQL_DB_NAME: my_mysql_db # 数据库名称 MYSQL_USER: my_mysql_user # 数据库用户名 MYSQL_PASSQWORD: my_mysql_password # 数据库密码 MYSQLDUMP_ENABLED: yes # 启用MySQL备份 NGINX_X_FORWARDED_FOR: yes # 启用X-FORWARD-FOR头 MEMCACHED_ENABLED: yes # 启用memcached
yaml- name: 创建容器 docker_container: name: 'www01' hostname: www01 image: robostlund/nginx-php-mysql-static:latest recreate: yes pull: true ports: - "8080:80" # HTTP端口映射 volumes: - '/tmp/data:/data' # 数据持久化卷 env: MYSQL_DB_NAME: my_mysql_db # 数据库名称 MYSQL_USER: my_mysql_user # 数据库用户名 MYSQL_PASSQWORD: my_mysql_password # 数据库密码 MYSQLDUMP_ENABLED: yes # 启用MySQL备份 NGINX_X_FORWARDED_FOR: yes # 启用X-FORWARD-FOR头 MEMCACHED_ENABLED: yes # 启用memcached GIT_WEBSITE_REPO: 'https://github.com/robinostlund/demo-website.git' # Git仓库URL GIT_WEBSITE_BRANCH: 'master' # Git分支 GIT_WEBSITE_CRON_PULL: yes # 启用定时Git拉取
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务