如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像为 https://hub.docker.com/_/drupal 的 riscv64 架构专用版本,用于在 RISC-V 64 位架构环境中部署 Drupal 内容管理系统。Drupal 是一款基于 PHP 开发的免费开源内容管理框架,遵循 GNU 通用公共许可证发布,广泛应用于个人博客、企业官网、***平台(如 ***.gov)等各类网站,同时支持知识管理与业务协作场景。
注意:本镜像由 https://github.com/docker-library/drupal 维护,而非 Drupal 社区或 Drupal 安全团队。
Apache 变体:
https://github.com/docker-library/drupal/blob/bfc3b834626579c9f979148bbe42b9ea64690a0a/11.2/php8.4/apache-trixie/Dockerfile
FPM 变体:
https://github.com/docker-library/drupal/blob/bfc3b834626579c9f979148bbe42b9ea64690a0a/11.2/php8.4/fpm-trixie/Dockerfile
Alpine FPM 变体:
https://github.com/docker-library/drupal/blob/bfc3b834626579c9f979148bbe42b9ea64690a0a/11.2/php8.4/fpm-alpine3.22/Dockerfile
完整标签列表及对应 Dockerfile 链接可参考 https://github.com/docker-library/drupal%EF%BC%8C%E5%8C%85%E5%90%AB Drupal 10.x、11.1.x 等版本的 PHP 8.3/8.4、Apache/FPM/Alpine 组合。
快速启动容器
bashdocker run --name some-drupal -d riscv64/drupal
端口映射(主机可访问)
bashdocker run --name some-drupal -p 8080:80 -d riscv64/drupal
启动后通过 http://localhost:8080 或 http://主机IP:8080 访问 Drupal 安装向导。
MySQL 数据库集成
bashdocker network create some-network docker run -d --name some-mysql --network some-network \ -e MYSQL_DATABASE=drupal \ -e MYSQL_USER=user \ -e MYSQL_PASSWORD=password \ -e MYSQL_ROOT_PASSWORD=rootpass \ mysql:5.7
drupal(对应 MYSQL_DATABASE)user(对应 MYSQL_USER)password(对应 MYSQL_PASSWORD)some-mysql(容器名称,同一网络内可解析)PostgreSQL 数据库集成
bashdocker run -d --name some-postgres --network some-network \ -e POSTGRES_DB=drupal \ -e POSTGRES_USER=user \ -e POSTGRES_PASSWORD=pass \ postgres:11
POSTGRES_DB/POSTGRES_USER/POSTGRES_PASSWORDsome-postgres(容器名称)Drupal 的模块、主题、配置文件建议通过数据卷持久化存储,避免容器重建导致数据丢失。
方法 1:绑定挂载(Bind Mount)
bashdocker run --rm riscv64/drupal tar -cC /var/www/html/sites . | tar -xC /path/on/host/sites
bashdocker run --name some-drupal --network some-network -d \ -v /path/on/host/modules:/var/www/html/modules \ -v /path/on/host/profiles:/var/www/html/profiles \ -v /path/on/host/sites:/var/www/html/sites \ -v /path/on/host/themes:/var/www/html/themes \ riscv64/drupal
方法 2:Docker 命名卷
bashdocker volume create drupal-sites docker run --rm -v drupal-sites:/temporary/sites riscv64/drupal cp -aRT /var/www/html/sites /temporary/sites
bashdocker run --name some-drupal --network some-network -d \ -v drupal-modules:/var/www/html/modules \ -v drupal-profiles:/var/www/html/profiles \ -v drupal-sites:/var/www/html/sites \ -v drupal-themes:/var/www/html/themes \ riscv64/drupal
示例 compose.yaml(PostgreSQL 版本)
yaml# 访问地址:http://localhost:8080 # 安装时数据库配置: # - 数据库类型:PostgreSQL # - 数据库名称:postgres # - 用户名:postgres # - 密码:example # - 数据库主机:postgres services: drupal: image: riscv64/drupal:10-apache ports: - "8080:80" volumes: - drupal-modules:/var/www/html/modules - drupal-profiles:/var/www/html/profiles - drupal-themes:/var/www/html/themes - drupal-sites:/var/www/html/sites # 自动初始化镜像内置站点配置 restart: always postgres: image: postgres:16 environment: POSTGRES_PASSWORD: example restart: always volumes: drupal-modules: drupal-profiles: drupal-themes: drupal-sites:
启动命令:
bashdocker compose up -d
本镜像默认不包含额外 PHP 扩展,如需添加(如 gd、mbstring),需基于本镜像构建自定义镜像:
dockerfileFROM riscv64/drupal:11-php8.4-apache RUN apt-get update && apt-get install -y \ libpng-dev \ && docker-php-ext-install gd mbstring \ && apt-get clean && rm -rf /var/lib/apt/lists/*
参考 https://hub.docker.com/_/php 的 "以任意用户运行" 章节,通过 --user 参数指定运行用户:
bashdocker run --name some-drupal -u 1000:1000 -d riscv64/drupal
riscv64/drupal:<version>(默认变体)基于 Debian(如 trixie 版本)构建,包含 Apache Web 服务器,适合直接部署无需额外反向代理的场景。标签中的 trixie 等名称对应 Debian 发行版代号,用于明确基础系统版本。
riscv64/drupal:<version>-fpm包含 PHP-FPM(FastCGI 进程管理器),需配合 NGINX 等反向代理使用,适用于生产环境的高性能部署。使用时需注意:不要直接暴露 FPM 端口到公网,仅通过私有网络与反向代理通信。
riscv64/drupal:<version>-fpm-alpine基于 Alpine Linux 构建的轻量级 FPM 变体,镜像体积更小,适合资源受限的场景(如嵌入式设备)。
| 环境变量 | 作用 | 示例值 |
|---|---|---|
MYSQL_DATABASE | MySQL 数据库名称 | drupal |
MYSQL_USER | MySQL 用户名 | drupaluser |
MYSQL_PASSWORD | MySQL 用户密码 | securepass |
POSTGRES_DB | PostgreSQL 数据库名称 | drupal |
POSTGRES_USER | PostgreSQL 用户名 | drupaluser |
POSTGRES_PASSWORD | PostgreSQL 用户密码 | securepass |
Drupal 遵循 GNU 通用公共许可证。镜像中包含的其他软件(如 Debian 系统组件、PHP 等)可能具有独立许可证,详细信息可参考 https://github.com/docker-library/repo-info/tree/master/repos/drupal%E3%80%82%E4%BD%BF%E7%94%A8%E6%9C%AC%E9%95%9C%E5%83%8F%E5%8D%B3%E8%A1%A8%E7%A4%BA%E6%82%A8%E5%90%8C%E6%84%8F%E9%81%B5%E5%AE%88%E6%89%80%E6%9C%89%E5%8C%85%E5%90%AB%E8%BD%AF%E4%BB%B6%E7%9A%84%E8%AE%B8%E5%8F%AF%E8%AF%81%E6%9D%A1%E6%AC%BE%E3%80%82
以下是 riscv64/drupal 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

来自真实用户的反馈,见证轩辕镜像的优质服务