首页 > 解决方案 > 如何使用单独的数据库服务器运行 Bitnami Drupal 容器

问题描述

这个Bitnami Drupal Docker 镜像建议使用 Docker compose 文件运行容器,如下所示。是否可以将此容器配置为使用托管在 Azure 等云平台上的单独数据库服务器?

Drupal 网站使用来自 Github 的原始 docker-compose 文件在 localhost 上运行良好。但是当修改docker-compose.yml为使用本地 SQL 数据库(如下)时,localhost 不会返回任何内容。本地数据库正在使用 XAMPP 运行以测试第二个文件,但奇怪的是,localhost 根本没有返回任何内容。

从技术上讲,XAMPP 使用的是 MySQL 而不是 MariaDB,不确定这是否会有所不同。

docker-compose.yml - 原创

version: '2'

services:
  mariadb:
    image: 'bitnami/mariadb:10.3'
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
      - MARIADB_USER=bn_drupal
      - MARIADB_DATABASE=bitnami_drupal
    volumes:
      - 'mariadb_data:/bitnami'
  drupal:
    image: 'bitnami/drupal:8'
    environment:
      - MARIADB_HOST=mariadb
      - MARIADB_PORT_NUMBER=3306
      - DRUPAL_DATABASE_USER=bn_drupal
      - DRUPAL_DATABASE_NAME=bitnami_drupal
      - ALLOW_EMPTY_PASSWORD=yes
    ports:
      - '80:80'
      - '443:443'
    volumes:
      - 'drupal_data:/bitnami'
    depends_on:
      - mariadb
volumes:
  mariadb_data:
    driver: local
  drupal_data:
    driver: local

docker-compose.yml - 修改

version: '2'

services:
  drupal:
    image: 'bitnami/drupal:8'
    environment:
      - MARIADB_HOST=localhost
      - MARIADB_PORT_NUMBER=3306
      - DRUPAL_DATABASE_NAME=docker
      - DRUPAL_DATABASE_USER=root
      - ALLOW_EMPTY_PASSWORD=yes
    ports:
      - '80:80'
      - '443:443'
    volumes:
      - 'drupal_data:/bitnami'
volumes:
  drupal_data:
    driver: local

标签: dockerdrupalbitnami

解决方案


Bitnami 开发人员在这里。Bitnami Drupal 容器支持以下用于配置 MySQL 数据库的环境变量:

  • DRUPAL_DATABASE_NAME
  • DRUPAL_DATABASE_USER
  • DRUPAL_DATABASE_PASSWORD
  • MARIADB_HOST
  • MARIADB_PORT_NUMBER

下面显示了“mydatabase”RDS 数据库的一组示例值:

- DRUPAL_DATABASE_NAME=mydatabase
- DRUPAL_DATABASE_USER=username
- DRUPAL_DATABASE_PASSWORD=password123
- MARIADB_HOST=mydatabase.asdfg.us-east-1.rds.amazonaws.com
- MARIADB_PORT_NUMBER=3306

请注意,如果您要使用外部数据库,则尚不支持 SSL 连接,因此您必须保护它(即通过检查该数据库是否无法在 Internet 上远程访问)。

如果您发现任何问题,请随时创建一个新的 GitHub 问题,我们很乐意为您提供帮助。


推荐阅读