首页 > 解决方案 > 如何使用 docker-compose.yml 为 Drupal 映像绑定挂载?

问题描述

我正在尝试将我的 Drupal-Image 与 docker-compose.yml 文件绑定,但它并不能完全按照我的意愿工作:

version: '3.2'

  services:

    drupaldb:
      image: mysql:latest
      ports:
        - 2306:3306
      environment:
        - MYSQL_ROOT_PASSWORD=drupal
        - MYSQL_DATABASE=drupal
      volumes:
        - type: bind
          source: ./mysqldata
          target: /var/lib/mysql
      restart: always

    drupal:
      image: drupal:8-apache
      ports:
        - 8090:80
      depends_on:
        - drupaldb
      volumes:
        - type: bind
          source: ./drupaldata
          target: /var/www/html/sites
      restart: always

文件已创建,但它是空的!在“选择语言”页面上,我无法选择德语(只能选择英语)。此外,缺少安装所需的其他文件,因此我无法正确安装 Drupal。

如果有人可以帮助我解决这个问题或像我一样遇到同样问题的其他人,我将非常感激:)

标签: dockerdrupal

解决方案


我建议使用Lando,它在 Docker 之上运行,您可以对其进行配置以满足您的需求,它的文档相当完善。

Lando 适用于希望:

  1. 快速指定并轻松启动开发项目所需的服务和工具。

  2. 在名为 .lando.yml 的每个项目的 live-in-git 配置文件中指定这些本地开发依赖项

  3. 自动化复杂的构建步骤、测试设置、部署或其他多次重复的工作流程

  4. 避免直接使用 docker 或 docker-compose的内置受虐狂

它是基于 Docker 容器技术构建的免费、开源、跨平台、本地开发环境和 DevOps 工具

我的配置文件很简单:

name: my-drupal-site
recipe: drupal8
config:
  webroot: .
services:
  appserver:
    xdebug: true

此外,还有Docksal和其他类似项目


推荐阅读