如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
本镜像为Drupal的基础Docker镜像,基于https://github.com/Islandora-DevOps/isle-buildkit/tree/main/drupal%E9%A1%B9%E7%9B%AE%E6%9E%84%E5%BB%BA%E3%80%82%E4%BD%9C%E4%B8%BADrupal%E5%BA%94%E7%94%A8%E7%9A%84%E5%BA%95%E5%B1%82%E8%BF%90%E8%A1%8C%E7%8E%AF%E5%A2%83%EF%BC%8C%E9%95%9C%E5%83%8F%E6%9C%AC%E8%BA%AB%E4%B8%8D%E9%A2%84%E8%A3%85Drupal%E6%A0%B8%E5%BF%83%E4%BB%A3%E7%A0%81%EF%BC%8C%E9%9C%80%E7%94%B1%E7%94%A8%E6%88%B7%E6%8F%90%E4%BE%9B%E8%87%AA%E5%AE%9A%E4%B9%89Composer%E6%96%87%E4%BB%B6%E3%80%82%E9%95%9C%E5%83%8F%E5%86%85%E7%BD%AE%E5%90%AF%E5%8A%A8%E8%84%9A%E6%9C%AC%EF%BC%8C%E6%94%AF%E6%8C%81%E5%9C%A8%E9%A6%96%E6%AC%A1%E8%BF%90%E8%A1%8C%E6%97%B6%E8%87%AA%E5%8A%A8%E5%AE%8C%E6%88%90Drupal%E7%9A%84%E5%AE%89%E8%A3%85%E9%85%8D%E7%BD%AE%E3%80%82
islandora/nginx镜像提供Web服务,具体配置(如卷挂载、端口映射)请参考https://github.com/Islandora-DevOps/isle-buildkit/tree/main/nginx%E3%80%82| 端口 | 描述 |
|---|---|
| 80 | HTTP服务端口 |
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| DRUPAL_ENABLE_HTTPS | true | 告知PHP使用HTTPS协议(影响URL生成等功能) |
| DRUPAL_REVERSE_PROXY_IPS | 反向代理IP地址。若检测到'traefik'主机则使用其IP,否则默认0.0.0.0 |
Drupal支持多种数据库后端,默认连接配置继承自基础镜像。以下变量用于覆盖或补充数据库连接参数:
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| DRUPAL_DEFAULT_DB_DRIVER | 数据库驱动,默认继承DB_DRIVER(来自基础镜像) | |
| DRUPAL_DEFAULT_DB_HOST | 数据库主机地址,默认继承DB_HOST(来自基础镜像) | |
| DRUPAL_DEFAULT_DB_PORT | 数据库端口,默认继承DB_PORT(来自基础镜像) | |
| DRUPAL_DEFAULT_DB_ROOT_PASSWORD | 数据库root用户密码,默认继承DB_ROOT_PASSWORD(来自基础镜像) | |
| DRUPAL_DEFAULT_DB_ROOT_USER | 数据库root用户名(用于创建站点数据库),默认继承DB_ROOT_USER |
用于配置默认Drupal站点(单站点模式下唯一站点,多站点模式下主站点):
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| DRUPAL_DEFAULT_ACCOUNT_EMAIL | *** | 管理员账号*** |
| DRUPAL_DEFAULT_ACCOUNT_NAME | admin | 管理员用户名 |
| DRUPAL_DEFAULT_ACCOUNT_PASSWORD | password | 管理员密码(生产环境必须自定义) |
| DRUPAL_DEFAULT_DB_NAME | drupal_default | 站点数据库名称 |
| DRUPAL_DEFAULT_DB_PASSWORD | password | 数据库用户密码(生产环境必须自定义) |
| DRUPAL_DEFAULT_DB_USER | drupal_default | 数据库用户名 |
| DRUPAL_DEFAULT_EMAIL | *** | 站点管理员*** |
| DRUPAL_DEFAULT_LOCALE | en | 站点语言(地区)代码 |
| DRUPAL_DEFAULT_NAME | default | 站点名称 |
| DRUPAL_DEFAULT_PROFILE | standard | 安装配置文件(如standard、minimal) |
| DRUPAL_DEFAULT_SUBDIR | default | 站点子目录(多站点模式下用于区分站点路径) |
| DRUPAL_DEFAULT_CONFIGDIR | 从指定目录加载现有配置文件(用于配置导入) | |
| DRUPAL_DEFAULT_INSTALL | true | 若站点未安装,则自动执行安装流程 |
通过DRUPAL_SITE_{SITE}_*格式的环境变量定义额外站点,其中{SITE}为自定义站点标识(如BLOG、FORUM)。仅需定义DRUPAL_SITE_{SITE}_NAME即可创建站点,其他参数可选(默认值如下表):
| 环境变量 | 默认值 | 描述 |
|---|---|---|
| DRUPAL_SITE_{SITE}_ACCOUNT_EMAIL | *** | 站点管理员*** |
| DRUPAL_SITE_{SITE}_ACCOUNT_NAME | admin | 站点管理员用户名 |
| DRUPAL_SITE_{SITE}_ACCOUNT_PASSWORD | password | 站点管理员密码(生产环境必须自定义) |
| DRUPAL_SITE_{SITE}_DB_NAME | drupal_{SITE} | 站点数据库名称(默认格式:drupal_{SITE}) |
| DRUPAL_SITE_{SITE}_DB_PASSWORD | password | 站点数据库密码(生产环境必须自定义) |
| DRUPAL_SITE_{SITE}_DB_USER | drupal_{SITE} | 站点数据库用户名(默认格式:drupal_{SITE}) |
| DRUPAL_SITE_{SITE}_EMAIL | *** | 站点管理员*** |
| DRUPAL_SITE_{SITE}_LOCALE | en | 站点语言(地区)代码 |
| DRUPAL_SITE_{SITE}_NAME | 站点名称(必填,用于标识站点) | |
| DRUPAL_SITE_{SITE}_PROFILE | standard | 站点安装配置文件 |
| DRUPAL_SITE_{SITE}_SUBDIR | {SITE} | 站点子目录(默认与{SITE}一致) |
| DRUPAL_SITE_{SITE}_CONFIGDIR | 从指定目录加载现有配置文件 | |
| DRUPAL_SITE_{SITE}_INSTALL | true | 若站点未安装,则自动执行安装流程 |
bashdocker run -d \ --name drupal-site \ -p 80:80 \ --link nginx:nginx \ # 链接nginx容器 --link mysql:db \ # 链接数据库容器(假设数据库容器名为mysql) -e DRUPAL_DEFAULT_ACCOUNT_PASSWORD="SecurePassword123" \ # 自定义管理员密码 -e DRUPAL_DEFAULT_DB_PASSWORD="DBPassword456" \ # 自定义数据库密码 -e DB_HOST="db" \ # 数据库主机(链接的mysql容器名) -e DB_USER="root" \ # 数据库root用户 -e DB_ROOT_PASSWORD="RootPassword789" \ # 数据库root密码 islandora/drupal
yamlversion: '3.8' services: nginx: image: islandora/nginx ports: - "80:80" volumes: - nginx-conf:/etc/nginx/conf.d depends_on: - drupal drupal: image: islandora/drupal environment: # 默认站点配置 DRUPAL_DEFAULT_NAME: "main-site" DRUPAL_DEFAULT_ACCOUNT_PASSWORD: "MainSitePass123" DRUPAL_DEFAULT_DB_PASSWORD: "MainDBPass456" # 多站点配置(示例:博客站点) DRUPAL_SITE_BLOG_NAME: "blog-site" DRUPAL_SITE_BLOG_ACCOUNT_PASSWORD: "BlogPass789" DRUPAL_SITE_BLOG_DB_PASSWORD: "BlogDBPass012" # 数据库连接基础参数(供所有站点共享) DB_HOST: "mysql" DB_USER: "root" DB_ROOT_PASSWORD: "RootPass345" depends_on: - mysql mysql: image: mysql:8.0 environment: MYSQL_ROOT_PASSWORD: "RootPass345" # 需与DRUPAL侧DB_ROOT_PASSWORD一致 volumes: - mysql-data:/var/lib/mysql volumes: nginx-conf: mysql-data:
注意:
password)为强密码。--link或Docker网络配置)。以下是 islandora/drupal 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

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