我试图将芹菜服务添加到弹性豆茎环境中。所以我决定创建第一个用户和组" celery"。我按照第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"
但在部署期间,我收到错误:
[2017-02-10T08:59:23.899Z] INFO [16595] - [Application update app-43a4-170210_095832@474/AppDeployStage0/EbExtensionPreBuild/Infra-EmbeddedPreBuild] : Activity execution failed, because: Failed to add user celery (ElasticBeanstalk::ExternalInvocationError)
我也修改了homeDir,uid,login和gruop id,但它没有帮助。怎么解决?或者如何通过弹性豆柄调试useradding?
答案 0 :(得分:1)
使用命令部分解决方法:
groups:
celery:
gid: "101"
commands:
command 00_add_user_celery:
command: useradd -d /opt/python/celery -g celery -u 1501 celery
ignoreErrors: true
答案 1 :(得分:1)
404pio的解决方法提供了一种解决方案,但设置为ignoreErrors
的{{1}}可以隐藏意外错误。
我评论了这个答案,但格式有限并且难以理解。以下是改进错误情况的方法:
true
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
是默认值,也可以省略。