这里的问题是:最简单的方法是什么?
我是开发人员,我可以完全访问生产服务器,但它不是由我管理的.我只是知道我在服务器周围设置网站,使用cPanel,一些WHM等等…
服务器使用Apache,MySQL和PHP运行CentOS 6.5.
有没有办法我可以“导出”该服务器的配置,包括它拥有的所有应用程序,模块,版本等……并使用它来创建一个Vagrant Box?或者是手动分析所有内容并将其写下来的问题?
如果要走的路是第二种选择,我可以获得有关如何做到这一点而不会遗漏任何东西的任何建议吗?
解决方法
AFAIK,您可能不得不手动执行此操作.我将采取的方式(至少在应用程序级别)是:
>重复使用Vagrant Cloud中预定义的CentOS 6.5 LAMP boxes之一,以避免从头开始重新安装所有软件.
>如果尚未安装Virtualbox,则安装Virtualbox,因为它是Vagrant的默认提供商.
>制作生产apache conf / httpd.conf,conf / extra和modules(我认为这些是主要的)的副本,并将它们导入到Vagrant框中的apache服务器中.
>使用mysqldump转储生产MysqL数据库.然后将模式和数据导入到Vagrant框中的MysqL数据库中.如果生产数据库太大而无法满足您的开发需求,请使用--no-data
选项排除数据导出. (我共享的那个链接上的表4.9提供了一个完整的选项列表.)
>重新部署程序.
>一旦您对Vagrant框中的所有调整感到满意,请使用VirtualBox将新VM克隆为基准.
如上所述,这些只是应用程序级别的设置和配置.您的生产服务器中可能还有其他与防火墙,SSH密钥,用户权限等相关的配置,您可能需要或不需要在开发环境中复制这些配置.
希望这可以帮助.