我一直在玩Vagrant和Puppet,并希望建立团队和我可以使用的环境。我没有Vagrant的技术问题,一切都很清楚并在那里工作,但我确实有一些逻辑问题:
每个人都建议每个项目一个方框。这真的有必要吗?我们使用相同的软件堆栈执行多个项目。我真的不明白为什么我们不应该把所有项目都放在一个盒子里。此外,当我们进行维护和错误修复时,在项目之间来回切换是非常困难的。
您如何处理数据库?我们正在使用MySQL db。我们怎样才能确保每次“迷失”新盒子时我们都不必导入.sql文件?或者我只是暂停我的盒子,而不是销毁它?
答案 0 :(得分:1)
这两个问题都取决于您的使用案例:
如果您的项目密切相关,比如说它们都是wordpress开发,那么确定1个就足够了。但对于需要不同代码库,env支持的项目,您应该能够编写简单的木偶模块,使您能够在几分钟内快速vagrant up
一个新的框。
不确定您的用例,但即使您vagrant halt
,当您下次触发vagrant up
时,mysql中的数据库仍然存在。如果你在谈论vagrant destroy
,那么你应该可以使用木偶脚本导入新的盒子创建(即vagrant init
)。检查File
上的puppet文档,您将看到如何将.sql文件复制到vagrant并运行mysql import。