使用Vagrant和chef-solo的用户设置MySQL数据库

时间:2012-06-21 07:26:29

标签: chef vagrant

我正在尝试在项目上自动化开发人员设置,这样新开发人员可以简单地发出vagrant up来获取带有MySQL和Tomcat的虚拟机以及部署并运行的自定义war文件。部署战争假定MySQL实例上存在特定的数据库和用户。

现在,我正在使用厨师独奏,一切正在启动并正确安装。但是,我似乎无法弄清楚如何编写用于设置数据库和用户的食谱。我查看了database食谱,但这似乎不适合我的厨师独奏用例。我一直无法在网上找到为厨师独奏实例设置数据库的示例设置,但也许我正在搜索错误的术语?

我可以编写一个bash脚本来设置数据库和用户(条件是它们不存在),但这似乎不符合cookbook的理念。你会如何解决这个问题?

2 个答案:

答案 0 :(得分:20)

是的,您可以使用database食谱这样的厨师方式:

include_recipe "database::mysql"

# create a mysql database
mysql_database 'sonar' do
  connection ({:host => "localhost", :username => 'root', :password => node['mysql']['server_root_password']})
  action :create
end

有关此食谱的更多信息,请访问:http://community.opscode.com/cookbooks/database

答案 1 :(得分:3)

对于Chef solo,您需要做一些配置吗?我正在谈论的配置是here同一页面还提供了如何配置和运行食谱的快速小演示,之后您可以:

适用于MySQL的食谱是here Tomcat的Cookbook是here

可以找到其他食谱here

根据您提供的数据,我最接近。一旦你配置了这个和设置的东西,如果你遇到错误,发布它们。希望我能提供帮助:)

我首先配置Chef Solo,然后将Cookbook放在一个配置目录中。