我想在新安装的Drupal环境中加载一个包含所有依赖项的现有Drupal站点。 大多数网站都基于Drupal 7.x和PHP 5.x。
我已经使用Docker(Drupal 8.x和PHP 7.x)创建了一个环境。 现在我想在这个环境中加载/测试我现有的网站,但我不知道如何实现这一点。
撰写文件运行正常。我有一个drupal安装+ MariaDB。
这是我的docker-compose.yml:
version: '3'
services:
drupal:
image: jonasvbogaert/digipolis-migration:latest
container_name: drupalenv
ports:
- 8080:80
volumes:
- ./Desktop:/var/www/html/modules
- ./Desktop:/var/www/html/profiles
- ./Desktop:/var/www/html/themes
- ./Desktop:/var/www/html/sites
restart: always
environment:
DRUPAL_SITE_NAME: Drupal
DRUPAL_USER: admin
DRUPAL_PASS: admin
mariadb:
image: mariadb:latest
container_name: mariadbenv
restart: always
ports:
- 3036:3036
depends_on:
- drupal
environment:
MYSQL_ROOT_PASSWORD: ""
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
MYSQL_USER: drupal
MYSQL_PASSWORD: drupal
MYSQL_DATABASE: drupal
更新08/25:
我想我在这方面取得了一些进展,但现在我遇到了一个新问题。 我能够在我的docker容器中加载我的网站的根目录,但是我无法在localhost上访问它。得到403错误。
包含docker-compose文件的文件夹必须放在我网站的根目录中。
编辑了docker-compose.yml
version: '3'
services:
drupal:
image: jonasvbogaert/php-docker:${IMAGE_VERSION}
container_name: drupalenv
ports:
- 8080:80
volumes:
- ../:/var/www/html/
restart: always
environment:
DRUPAL_SITE_NAME: Drupal
DRUPAL_USER: admin
DRUPAL_PASS: admin
mariadb:
image: mariadb:latest
container_name: mariadbenv
restart: always
ports:
- 3036:3036
depends_on:
- drupal
environment:
MYSQL_ROOT_PASSWORD: ""
MYSQL_ALLOW_EMPTY_PASSWORD: 'yes'
MYSQL_USER: drupal
MYSQL_PASSWORD: drupal
MYSQL_DATABASE: drupal
答案 0 :(得分:0)
一种方法可能如下 当您全新安装了drupal时,可以使用功能模块(https://www.drupal.org/project/features)从现有站点导出您的工作/依赖关系。然后将功能导入到您当前最新的drupal