2012-09-11 3 views
9

AWS는 다른 환경과 관련하여 콩팥에 다른 배포 환경을 관리하는 방법과 소스 제어 repo에 이러한 설정을 저장하는 방법을 제대로 설명하지 않습니다. 당신은 준비 및 자극 등의 여러 환경을 갖고 싶어다른 환경에서 다른 구성으로 탄력적 인 Beanstalk에 Python 배포

"aws:elasticbeanstalk:container:python:environment": 
    DJANGO_SETTINGS_MODULE: "settings" 
    SERVER_ROOT: "/opt/python/current/app/" 

그러나, 현재 구성 파일을 교환 할 수 있습니다

그들은 명확하게하는 방법과 같이 .ebextensions에 설치하여 python.config을 설명한다. 뭐라구, 스테이징 같은 공유 환경을 위해 소스 제어 트리에서 어떻게 이것을 유지할 계획입니까? 푸시 할 때마다 이러한 구성 환경 설정이 필요합니다.

나는 또한 AWS가 무단 변경을 배포 할 수 없다는 것을 발견했습니다. 즉, 배치를 처리하는 스크립트를 작성하는 것도 옵션이 아닙니다. 내가 여기서 무엇을 놓치고 있니?

답변

0

시도한 적이 없지만 DJANGO_SETTINGS_MODULE을 구성 파일이 아닌 컨테이너 자체 매개 변수를 통해 전달할 수있는 것으로 보입니다. Beanstalk 콘솔의 Environment Details -> Edit Configuration -> Container 섹션을 통해 업데이트 할 수 있습니다. 그냥 아이디어로 :

  • 하는 "생산"여러 환경 만들기 "준비"등
  • 구성 관련 DJANGO_SETTINGS_MODULE 값을 각
  • .ebextensions
  • 배포 응용 프로그램이 사전 생성하는 환경에서
  • 제거 DJANGO_SETTINGS_MODULE 값
0

나는 이것에 대해 과거에 파고 들었고, 그들은 당신이 구성하는 데 eb branch을 사용하는 것을 좋아하는 것으로 보인다. e 환경을 변경 한 다음 eb 클라이언트 레벨의 옵션 설정에서 옵션을 다르게 구성하십시오 (분기를 초기화 할 때).

생각하면 환경 설정 (예 : DJANGO_SETTINGS_MODULE)은 애플리케이션 코드와 별도로 관리해야하므로 새로운 환경으로 이동할 때 환경 설정을 그대로 유지하고 설정하는 것으로 가정합니다. 기존 값으로 전환하면 재생하려는 env 값이 올바르게 설정되어 있는지 확인해야합니다.