专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

islandora/drupal Docker 镜像 - 轩辕镜像

drupal
islandora/drupal
Drupal基础镜像,提供运行Drupal内容管理系统所需的标准化基础环境,用于构建和部署Drupal网站或应用的底层支持。
1 收藏0 次下载activeislandora镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

Drupal Docker镜像文档

一、镜像概述

本镜像为Drupal的基础Docker镜像,基于Islandora-DevOps/isle-buildkit drupal项目构建。作为Drupal应用的底层运行环境,镜像本身不预装Drupal核心代码,需由用户提供自定义Composer文件。镜像内置启动脚本,支持在首次运行时自动完成Drupal的安装配置。

二、核心功能与特性

  • 基础环境支持:提供Drupal运行所需的底层依赖(PHP、扩展等),无需手动配置运行环境。
  • 自动安装机制:通过启动脚本实现首次运行时的Drupal自动安装,支持指定安装配置文件。
  • 多站点部署:支持通过环境变量定义多个独立Drupal站点,满足多域名/多应用场景。
  • 灵活配置:通过环境变量自定义数据库连接、站点信息、管理员账号等核心参数。
  • 反向代理兼容:支持配置反向代理IP,适配Traefik等网关服务。
  • 数据库兼容性:兼容多种数据库后端(依赖基础镜像配置),支持自定义数据库驱动及连接参数。

三、使用场景

  • Drupal项目基础镜像:适用于需要自定义Composer依赖的Drupal应用,作为底层运行容器。
  • 单站点部署:快速搭建独立Drupal站点,支持标准或自定义安装配置文件。
  • 多站点部署:通过环境变量定义多个子站点,实现多域名/多应用共享底层环境。
  • 开发与生产环境:支持开发、测试及生产环境(生产环境需自定义密码等敏感配置)。

四、依赖项

  • 基础镜像:需依赖islandora/nginx镜像提供Web服务,具体配置(如卷挂载、端口映射)请参考Nginx镜像文档。
  • 数据库:需外部数据库服务(如MySQL、PostgreSQL),支持通过环境变量配置连接参数。

五、端口说明

端口描述
80HTTP服务端口

六、环境变量配置

6.1 网络设置
环境变量默认值描述
DRUPAL_ENABLE_HTTPStrue告知PHP使用HTTPS协议(影响URL生成等功能)
DRUPAL_REVERSE_PROXY_IPS反向代理IP地址。若检测到'traefik'主机则使用其IP,否则默认0.0.0.0
6.2 数据库设置

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
6.3 默认站点配置

用于配置默认Drupal站点(单站点模式下唯一站点,多站点模式下主站点):

环境变量默认值描述
DRUPAL_DEFAULT_ACCOUNT_EMAIL***管理员账号***
DRUPAL_DEFAULT_ACCOUNT_NAMEadmin管理员用户名
DRUPAL_DEFAULT_ACCOUNT_PASSWORDpassword管理员密码(生产环境必须自定义)
DRUPAL_DEFAULT_DB_NAMEdrupal_default站点数据库名称
DRUPAL_DEFAULT_DB_PASSWORDpassword数据库用户密码(生产环境必须自定义)
DRUPAL_DEFAULT_DB_USERdrupal_default数据库用户名
DRUPAL_DEFAULT_EMAIL***站点管理员***
DRUPAL_DEFAULT_LOCALEen站点语言(地区)代码
DRUPAL_DEFAULT_NAMEdefault站点名称
DRUPAL_DEFAULT_PROFILEstandard安装配置文件(如standard、minimal)
DRUPAL_DEFAULT_SUBDIRdefault站点子目录(多站点模式下用于区分站点路径)
DRUPAL_DEFAULT_CONFIGDIR从指定目录加载现有配置文件(用于配置导入)
DRUPAL_DEFAULT_INSTALLtrue若站点未安装,则自动执行安装流程
6.4 多站点配置

通过DRUPAL_SITE_{SITE}_*格式的环境变量定义额外站点,其中{SITE}为自定义站点标识(如BLOG、FORUM)。仅需定义DRUPAL_SITE_{SITE}_NAME即可创建站点,其他参数可选(默认值如下表):

环境变量默认值描述
DRUPAL_SITE_{SITE}_ACCOUNT_EMAIL***站点管理员***
DRUPAL_SITE_{SITE}_ACCOUNT_NAMEadmin站点管理员用户名
DRUPAL_SITE_{SITE}_ACCOUNT_PASSWORDpassword站点管理员密码(生产环境必须自定义)
DRUPAL_SITE_{SITE}_DB_NAMEdrupal_{SITE}站点数据库名称(默认格式:drupal_{SITE})
DRUPAL_SITE_{SITE}_DB_PASSWORDpassword站点数据库密码(生产环境必须自定义)
DRUPAL_SITE_{SITE}_DB_USERdrupal_{SITE}站点数据库用户名(默认格式:drupal_{SITE})
DRUPAL_SITE_{SITE}_EMAIL***站点管理员***
DRUPAL_SITE_{SITE}_LOCALEen站点语言(地区)代码
DRUPAL_SITE_{SITE}_NAME站点名称(必填,用于标识站点)
DRUPAL_SITE_{SITE}_PROFILEstandard站点安装配置文件
DRUPAL_SITE_{SITE}_SUBDIR{SITE}站点子目录(默认与{SITE}一致)
DRUPAL_SITE_{SITE}_CONFIGDIR从指定目录加载现有配置文件
DRUPAL_SITE_{SITE}_INSTALLtrue若站点未安装,则自动执行安装流程

七、部署示例

7.1 Docker Run 单站点部署
bash
docker 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
7.2 Docker Compose 多站点部署
yaml
version: '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)为强密码。
  • 多站点部署时,需确保Nginx配置正确路由不同站点域名至对应子目录。
  • 数据库服务需提前部署,且网络需与Drupal容器互通(通过--link或Docker网络配置)。
查看更多 drupal 相关镜像 →
drupal logo
drupal
by library
官方
Drupal是开源内容管理平台,支持数百万网站和应用程序运行。
1080100M+ pulls
上次更新:6 天前
bitnami/drupal logo
bitnami/drupal
by VMware
认证
Bitnami安全Docker镜像,专为Drupal内容管理系统设计,提供安全加固与便捷部署能力。
335M+ pulls
上次更新:4 个月前
bitnamicharts/drupal logo
bitnamicharts/drupal
by VMware
认证
Bitnami提供的Drupal Helm图表,用于在Kubernetes环境中部署和管理Drupal内容管理系统。
500K+ pulls
上次更新:4 个月前
shinsenter/drupal logo
shinsenter/drupal
by SHIN Company
适用于PHP/Drupal的生产就绪Docker镜像,具备自动Drupal安装程序。
250K+ pulls
上次更新:7 天前
wodby/drupal logo
wodby/drupal
by wodby
原版Drupal容器镜像,提供未经修改的基础环境,用于快速部署和运行Drupal内容管理系统,支持自定义配置以构建各类网站应用。
3500K+ pulls
上次更新:6 天前
i386/drupal logo
i386/drupal
by i386
Drupal是一款开源内容管理平台,支持数百万网站和应用的运行。
11M+ pulls
上次更新:9 天前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

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

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
islandora/drupal
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429