2017-02-10 2 views
0

탄성 콩 줄기 환경에 셀러리 서비스를 추가하려고합니다. 그래서 첫 번째 사용자 및 그룹 "셀러리"를 만들기로 결정했습니다. 내가 페이지 http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html#linux-users의 지시에 따라, 내가 설정을 만들어 :탄성 콩 줄기 - 사용자 추가 실패

groups: 
    celery: 
    gid: "101" 

users: 
    celery: 
    groups: 
     - celery 
    uid: "1501" 
    homeDir: "/opt/python/celery" 

하지만 배포하는 동안, 내가 얻을 오류 : 나는 또한 홈 디렉토리 및 UID 및 로그인 및 gruop ID를 modifing에 한

[2017-02-10T08:59:23.899Z] INFO [16595] - [Application update [email protected]/AppDeployStage0/EbExtensionPreBuild/Infra-EmbeddedPreBuild] : Activity execution failed, because: Failed to add user celery (ElasticBeanstalk::ExternalInvocationError) 

, 그러나 그것은 도움이되지 않습니다. 그것을 고치는 방법? 또는 탄력적 인 콩 스토킹에 의한 사용자 추가를 디버깅하는 방법? 명령 섹션에

답변

1

해결 방법 :

groups: 
    celery: 
    gid: "101" 

commands: 
    command 00_add_user_celery: 
    command: useradd -d /opt/python/celery -g celery -u 1501 celery 
    ignoreErrors: true 
+0

놀라움을 피하기 위해'ignoreErrors'를'false'로 설정하는 것을 선호합니다. 스크립트를 작동 시키려면 테스트 옵션을 사용할 수 있습니다. 그냥'test : test! "''id -u celery 2>/dev/null'''을 명령 섹션에 추가하십시오. –

0

404pio에 의한 해결 방법은 솔루션을 제공하지만, trueignoreErrors 세트가 깜짝 오류를 숨길 수 있습니다.

그 대답에 댓글을 달았지만 형식은 제한적이며 이해하기 어렵습니다. 여기에 오류 사례를 개선 할 수있는 방법은 다음과 같습니다

groups: 
    celery: 
    gid: "101" 

commands: 
    command 00_add_user_celery: 
    test: test ! "`id -u celery 2> /dev/null`" 
    command: useradd -d /opt/python/celery -g celery -u 1501 celery 
    ignoreErrors: false 

ignoreErrors: false은 기본이며, 또한 생략 할 수있다.