【问题标题】:Chef: Install multiple Wordpress SiteChef:安装多个 Wordpress 站点
【发布时间】:2015-05-18 20:02:53
【问题描述】:

我正在使用 Chef 在单个节点上部署 Wordpress 站点。我在超市“Wordpress recipe”上使用了一个包装配方。我不知道如何告诉我的包装食谱在多个目录上安装 wordpress 文件:这里需要设置属性来定义安装目录

node['wordpress']['dir'] = '<path for the install dir'

我尝试将此块放入默认属性文件中,但它只安装在最后一个文件夹而不是前 3 个文件夹。

default['apps'] = ['app1', 'app2, 'app3', 'app4']
default['apps'].each do |app|

    node.default['wordpress']['dir'] = "/home/wordpress-user/#{app}"

end

我也在我的食谱文件中尝试过类似的方法

这就是我尝试创建文件夹的方式:

 node['apps'].each do |app|
  directory "/home/wordpress-user/#{app}" do
  owner node['wordpress']['user']
  group node['wordpress']['group']
  mode '0755'
  action :create
  Chef::Log.info "App files will be installed under /home/wordpress-user/#{app}"
  not_if { File.exist?("/home/wordpress-user/#{app}")}
  end
end

然后我试图告诉它循环安装 wordpress 文件

 node.default['apps'].each do |app|
     node.override['wordpress']['dir'] = "/home/wordpress-user/#{app}"
 end

但不知何故,这不起作用。我确定我做错了什么。我对厨师很陌生。请帮忙..

【问题讨论】:

    标签: wordpress chef-infra


    【解决方案1】:

    在你的情况下,我会从头开始编写 wordpress 配方,因为你所描述的将保存属性 node['wordpress']['dir'] = "/home/wordpress-user/app4",因为它会覆盖现有属性. 请查看attributes section

    我会使用:

    node.default['apps'].each do |app|
      node.override['wordpress']['dir'][app] = "/home/wordpress-user/#{app}"
    
      directory node['wordpress']['dir'][app] do
        owner node['wordpress']['user']
        group node['wordpress']['group']
        mode '0755'
        action :create
        Chef::Log.info "App files will be installed under /home/wordpress-user/#{app}"
        not_if { File.exist?(node['wordpress']['dir'][app])}
      end
    
      bash "extract wp code to #{app}" do
        cwd node['wordpress']['dir'][app]
        code "tar -zxf #{sourcecode}"
      end
    end
    

    最好的问候, 阿列克谢

    根据您的情况,我会在 apache 配置、配置数据库和提取 wordpress 源代码中分别配置每个应用程序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-15
      • 2015-06-22
      • 2011-10-03
      • 2021-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多