Tag: chef

通过厨师部署时git错误

我正在尝试通过厨师代码部署rails app。 食谱包含代码 deploy_revision “testapp” do repo “REPO_URL” ssh_wrapper “/home/ubuntu/.ssh/chef_ssh_deploy_wrapper.sh” environment({ “RAILS_ENV” => “staging” }) deploy_to “/home/ubuntu/testapp” branch “master” user “ubuntu” group “ubuntu” scm_provider Chef::Provider::Git end 和sshwrapper文件包含 exec ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no github.com -i “/home/ubuntu/.ssh/id_rsa” “$@” 当我运行bootstrap 我得到的错误如下 STDERR:警告:永久性地将“github.com,192.30.252.129”(RSA)添加到已知主机列表中。 192.168.1.32权限被拒绝(publickey)。 192.168.1.32致命:无法从远程存储库读取。 192.168.1.32请确保您拥有正确的访问权限 192.168.1.32并且存储库存在。 192.168.1.32 —-结束输出git ls-remote“REPO_URL”master * —- 所以,无法弄清楚原因。 任何帮助,将不胜感激。

厨师部署?

我有兴趣从Capistrano转换为Chef,但我有一些问题将所有部分组合在一起。 我已经关注了http://wiki.opscode.com/display/chef/Quick+Start并且能够knife启动EC2实例。 就代码部署而言,看起来好像我想做http://wiki.opscode.com/display/chef/Deploy+Resource中的内容 ,唯一的问题是,该页面上没有提到它在哪个目录中/ file deploy /to/path代码块应该去。 我遇到的另一个问题是了解在设置服务器后如何部署代码更改。 也许我只是习惯了当前的工作流程( git push && cap deploy ),但我能说的最好的是,在我提交更改后,我应该ssh到服务器并运行sudo chef-client ? 有些事情感觉不对。 是否没有相应的上限,即chef deploy ? 最后(也许这有点困难),我希望将多个rails应用程序部署到单个服务器上。 在每个应用程序的回购中保留某种厨师配置文件来描述其部署的细节似乎是谨慎的,但我不确定那将如何与chef-repo /托管服务器进行交互。 每个应用程序都是一个角色吗? 根据我对事物运作方式的理解,我对’chef-client’试图在运行时部署所有应用程序的想法感到有些不安。 通过git push && cap deploy我确定我正在部署什么。 而某些其他应用程序存储库可能不处于可部署状态。 是否有办法在此设置中部署一个应用程序?

如何使用vagrant和chef创建虚拟主机

我已经设置了我的第一台流浪汉机器,并通过刀下载了一些食谱。 我坚持使用虚拟主机的设置。 这是我的Vagrantfile: Vagrant.configure(“2”) do |config| config.vm.box = “precise32” config.vm.box_url = “http://files.vagrantup.com/precise32.box” config.vm.network :forwarded_port, guest: 80, host: 8080 config.vm.network :private_network, ip: “192.168.33.10” config.vm.provision :chef_solo do |chef| chef.json = { “mysql” => { “server_root_password” => “admin”, “server_repl_password” => “admin”, “server_debian_password” => “admin” }, “apache” => { “listen_address” => “0.0.0.0” } } chef.add_recipe “apt” chef.add_recipe “vim” chef.add_recipe […]