PHP App云架构与代码和&数据库重复

时间:2013-11-12 09:40:28

标签: php amazon-ec2 cloud

我希望在云中设置我的PHP应用程序,以便为每个新客户部署一个新的应用程序副本(包含源代码和mysql数据库)。

如何在亚马逊云中实现这一目标?是否可以使用亚马逊的git更新来完成?我需要在最大程度上实现自动化,这样如果有新版本,那么应该将其传播到所有客户端副本。 MySQL更新不是问题,因为无论何时更新应用程序源代码,它都会自行运行更新的数据库。

如何在此方案中自动化源代码集和更新?

由于

1 个答案:

答案 0 :(得分:0)

我做了一些完全相同但使用我自己的专用服务器而不是公共云。 我最终在我的SVN服务器中使用“release”分支作为主代码库。

每5分钟检查一次挂起安装表的cron脚本。如果它在那里找到了东西,它为新用户创建了一个新文件夹,提取了最新的SVN,为数据库导入了一个主.sql文件,并创建了一个db用户。将应用程序的配置文件写入创建的文件夹,编写新的绑定条目并重新启动绑定。并将foldername,DBname写入文本文件。

第二个脚本每晚运行并将最新的SVN拉入文件夹中存储的文件夹名称,然后从evn中拉出并运行updatedb.sql,以便对文本文件中的dbname运行。虽然它不是万无一失,并且已经采取了很多修补措施来使其稳定。我敢说那里有配置管理系统可以完全按照你/我的想法开箱即用,但是我喜欢写自己的挑战。