在Docker中编辑源代码

时间:2015-08-29 08:44:00

标签: docker dockerfile

我在我的本地机器上运行一个带有MySQL数据库的Drupal站点,源代码被分成许多Github存储库(每个模块一个)。

由于使网站在新机器上运行对于所有存储库和迁移数据库非常耗时,我想是否Docker可以提供帮助。几个问题:

  • Docker可以封装整个drupal站点,包括已经存在一些数据的数据库吗?
  • 如果我从docker中提取图像,我可以编辑原始的Drupal源代码吗?怎么样?

2 个答案:

答案 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。您可以通过更改目录卷映射来调整它。

搬运工-compose.yml

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