我在我的本地机器上运行一个带有MySQL数据库的Drupal站点,源代码被分成许多Github存储库(每个模块一个)。
由于使网站在新机器上运行对于所有存储库和迁移数据库非常耗时,我想是否Docker可以提供帮助。几个问题:
答案 0 :(得分:3)
Docker可以封装整个drupal站点,包括已经存在一些数据的数据库吗?
是。在声明容器时,使用选项-v $ext_source:$int_source
将卷从主机安装到VM。例如:
docker run ... -v ~/sql/mysite:/srv/sql -v ~/dev/mysite:/srv/code ... Arturo/mysite.dev:0.1
这将从localhost安装两个目录到VM,你只需要在Docker容器中指向DB来使用挂载的数据。
BTW,可以实时编辑已安装的目录。因此,如果在容器中安装源代码目录,然后在主机上编辑代码,则可以在容器内部进行更改。
答案 1 :(得分:0)
以下compose文件可用于运行Drupal。您可以通过更改目录卷映射来调整它。
db:
image: mysql
environment:
- MYSQL_ROOT_PASSWORD=letmein
- MYSQL_DATABASE=drupal
- MYSQL_USER=drupal
- MYSQL_PASSWORD=drupal
volumes:
- /var/lib/mysql
web:
image: drupal
links:
- db:mysql
ports:
- "8080:80"
volumes:
- /var/www/html/sites
- /var/www/private