我写了一个安装 Aegir 的方法。我想使用 aegir 配方在 aws 上引导一个新实例,安装顺利,但无法执行“drush hostmaster-install”,因为它抛出“Drupal 安装未找到”错误。
当我手动进入机器并让厨师客户端与 aegir 用户一起运行时,它安装顺利。
使用 ubuntu 用户 ssh 到 ec2 sudo su - aegir 须藤厨师客户
但是当我用 ubuntu 用户引导新实例时,安装失败了。我很欣赏任何将用户切换到运行厨师客户端的想法。
执行“apt-get-update”做
命令“sudo apt-get 更新”
结尾
%w{curl apache2 php5 libapache2-mod-php5 openssl php-pear php5-cli php5-common php5-curl php5-dev php5-gd php5-imagick
php5-imap php5-intl php5-mcrypt php5-memcache php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-tidy php5-gd
php5-xmlrpc php5-xsl apache2-utils postfix rsync sudo libcurl3 libcurl3-gnutls mysql-client mysql-common}.each do |x|
包 x 做
行动:安装
结尾
结尾
用户“aegir”做
动作:创建
支持:manage_home => true
评论“aegir 用户”
主页 "#{node[:aegir][:dir]}"
外壳“/bin/bash”
密码“VenEucAf1”
结尾
组“www-data”做
行动:修改
成员“aegir”
追加真
结尾
bash“install_mysql”做
用户“根”
代码 /etc/sudoers.d/aegir
chmod 440 /etc/sudoers.d/aegir
EOH
not_if { ::File.exists?("/etc/sudoers.d/aegir") }
结尾
bash“Install_drush”做
用户“根”
cwd "/var/aegir"
代码 '/var/aegir', 'USER' => 'aegir' })
cwd "#{node[:aegir][:dir]}"
命令为真,:restart => 真,:reload => 真
行动:开始
结尾
更新了我的完整食谱。
错误:用户 aegir 不存在