0
나는 Aegir를 설치하기위한 제조법을 작성했습니다. 나는 aegir 제조법으로 aws에 새로운 인스턴스를 부트 스트랩하고 싶습니다. 설치는 잘되지만 "Drupal 설치를 찾을 수 없습니다"오류가 발생하여 "drush hostmaster-install"을 실행하지 못합니다.부트 스트랩 중 chef-client 사용자 전환
부드럽게 설치합니다. 수동으로 기계에 들어가서 요리사 클라이언트를 aegir 사용자와 함께 실행하십시오.
ssh to ec2 with ubuntu user sudo su - aegir sudo chef-client
우분투 사용자로 새 인스턴스를 부트 스트랩하면 설치가 실패합니다. 나는 셰프 클라이언트를 실행하는 사용자 전환의 아이디어를 주셔서 감사합니다.
execute "apt-get-update" do command "sudo apt-get update" end %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| package x do action :install end end user "aegir" do action :create supports :manage_home => true comment "aegir User" home "#{node[:aegir][:dir]}" shell "/bin/bash" password "VenEucAf1" end group "www-data" do action :modify members "aegir" append true end bash "install_mysql" do user "root" code /etc/sudoers.d/aegir chmod 440 /etc/sudoers.d/aegir EOH not_if { ::File.exists?("/etc/sudoers.d/aegir") } end bash "Install_drush" do user "root" cwd "/var/aegir" code '/var/aegir', 'USER' => 'aegir' }) cwd "#{node[:aegir][:dir]}" command true, :restart => true, :reload => true action :start end
내 완전 제조법이 업데이트되었습니다.
오류 : 사용자이지 어하지 당신이 HOME
환경 변수를 설정해야 할 수도 있습니다처럼
동일한 bash 스크립트 설치 aegir에서 활성화 시켰습니다. 떠들썩한 파티 \t 사용자 "이지 어"를 수행 \t 기 "WWW-데이터」 「이지 어 설치" \t 환경 ({ '홈'=> "# {노드 [:이지 어] : DIR]}"}) CWD "# {node [: aegir] [: dir]} " \t 코드 <<-EOH –
그런 다음 다른 환경 변수를 확인하십시오. – coderanger
@SwaroopKundeti 실행 리소스에'user "aegir"속성이 있습니까? (만약 그렇다면, 스크립트는이 사용자와 함께 시작되어야하지만, 수동 테스트를 위해'su -'를 수행 할 때 우리는 추측 할 수없는 다른 env 변수를로드 할 수 있습니다. (좋은 테스트는' sudo su -u aegir sudo chef-client') – Tensibai