8

PHP 응용 프로그램 (Laravel)과 eb CLI가 설치되어 있습니다. 로컬에서는 모든 것이 좋습니다.Elastic Beanstalk CMD-AppDeploy 활동 실패 (작성자 문제)

초기 응용 프로그램이 예상대로 작동합니다 (작성시 archive.zip로 업로드 됨). 그것은 실패

git aws.push 

:

나는 사용하여 내 응용 프로그램 내 REPO을 누르면. 로그는 이런 말 :

[2014-12-12T16:53:38.652Z] INFO [28264] - [CMD-AppDeploy/AppDeployStage0/AppDeployPreHook/10_composer_install.sh] : Activity failed. 
[2014-12-12T16:53:38.652Z] INFO [28264] - [CMD-AppDeploy/AppDeployStage0/AppDeployPreHook] : Activity failed. 
[2014-12-12T16:53:38.652Z] INFO [28264] - [CMD-AppDeploy/AppDeployStage0] : Activity failed. 
[2014-12-12T16:53:38.653Z] INFO [28264] - [CMD-AppDeploy] : Completed activity. Result: 
Command CMD-AppDeploy failed. 

[2014-12-12T16:53:38.653Z] ERROR [28264] : Command CMD-AppDeploy failed! 
[2014-12-12T16:53:38.654Z] INFO [28264] : Command processor returning results: 
{"status":"FAILURE","api_version":"1.0","truncated":"true","results": 
[{"status":"FAILURE","msg":"[CMD-AppDeploy/AppDeployStage0/AppDeployPreHook/10_composer_install.sh] 
command failed with error code 1: 
/opt/elasticbeanstalk/hooks/appdeploy/pre/10_composer_install.sh\n++ /opt/elasticbeanstalk/bin/get-config container -k app_staging_dir\n+ EB_APP_STAGING_DIR=/var/app/ondeck\n+ 
cd /var/app/ondeck\n+ '[' -f composer.json ']'\n+ 
export COMPOSER_HOME=/root\n+ COMPOSER_HOME=/root\n+ '[' -d vendor ']'\n++ /opt/elasticbeanstalk/bin/get-config optionsettings -n aws:elasticbeanstalk:container:php:phpini -o composer_options\n+ PHP_COMPOSER_OPTIONS=\n+ 
echo 'Found composer.json file. Attempting to install vendors.'\nFound composer.json file. 
Attempting to install vendors.\n+ composer.phar install --no-ansi --no-interaction\nLoading composer repositories with package information\nInstalling dependencies (including require-dev) from lock file\n - Installing symfony/finder (v2.5.8)\n ","returncode":1,"events":[]}]} 

내가 인스턴스로 간하고 시스템 내에서 작곡가 업데이트를 수행하지만 괜찮 았는데 한이 작곡가의 문제였다 생각했다.

나는 .gitignore

나는 그래서 내가 여기 아주 분명 뭔가/실종 뭔가를하고 있어요 가정하고 온라인 유사한 아무것도 찾을 수 없습니다에서 composer.lock 파일을 제거했습니다.

+1

여기에 같은 문제가 있습니다. ( –

+0

설치 Rich의 차이점은 무엇입니까? – Mason8r

+1

로그를보고 (EB 콘솔에서 다운로드) 작곡가가 튀어 나오는 곳을 검색해보십시오. .어디에서 로그를 볼 수 없지만 로그의 한 부분에 작곡가 오류 출력이 표시되어 내 문제를 해결하는 데 도움이되었습니다. –

답변

5

필자는 내가 겪고있는 문제를 해결할 수있었습니다. 나는 bitbucket에 배포 키를 설정하지 않았기 때문에 작곡가가 다운로드 할 수 없기 때문에 개인 레포지를 가지고있었습니다. 설정 파일에 다음을 추가하면 문제가 해결됩니다. 이 질문 문제를 해결 해결됩니다 경우 https://github.com/modern-media/wordpress-on-beanstalk

에서

files: 
    "/root/.ssh/bitbucket_deployment_key": 
    mode: "000600" 
    owner: root 
    group: root 
    content: | 
     -----BEGIN RSA PRIVATE KEY----- 
     PUT YOUR PRIVATE KEY HERE 
     -----END RSA PRIVATE KEY----- 
    "/root/.ssh/config": 
     mode: "000600" 
     owner: root 
     group: root 
     content: | 
     Host bitbucket.org 
      StrictHostKeyChecking no 
      IdentityFile /root/.ssh/bitbucket_deployment_key 
      UserKnownHostsFile /dev/null 

는 잘 모르겠어요. 오류 메시지는 매우 일반적입니다. 나는 내 밑으로 가려면 전체 EB 기록을 파 내야 만했다.

추가 또한 레포를 다운로드하려고 할 때 404가 발생하기 때문에 작곡가가 실패 할 수 있음을 발견했습니다. composer.lock 파일을 신뢰할 수 있어야하지만 이것은 항상 이상한 일입니다. 이것은 쉬운 수정입니다. .lock 파일을 삭제하고 작곡가 업데이트를 다시 실행하여 .lock 파일에 올바른 repo URL을 가져 오면됩니다.

5

지난 주 Symfony 배포와 동일한 문제가 발생했습니다. 어떻게 든 Symfony prod/dev 환경에 문제가있어서 설치 후 스크립트가 실패했습니다.

일시적인 수정으로 사후 설치 스크립트를 비활성화하고 나중에 올바른 SYMFONY_ENV가 설정된 경우 실행합니다. 내 .elasticbeanstalk/application.config에서

:

option_settings: 
    - namespace: aws:elasticbeanstalk:container:php:phpini 
    option_name: composer_options 
    value: --no-dev --optimize-autoloader --no-scripts 

그리고는 : 당신이 깊이 파고해야 할 수도 있으므로

container_commands: 
    21_composer_postinstall: 
    command: composer.phar run-script post-install-cmd 

AppDeployPreHook/10_composer_install.sh 내 경우에 실패한 이유를 실제 오류가 다른 로그 파일 중 하나였다.

+1

당분간 설치 후 스크립트를 비활성화했습니다. 여전히 문제가 있습니다. 개인 정보 저장소와 관련 있다고 의심하십시오. ssh 키를 추가하려고 시도했지만 아무데도 빨리 지내지 못했습니다. –

+0

오늘을 저장했습니다. – PachinSV