【问题标题】:AWS SQS with Celery in DjangoDjango 中带有 Celery 的 AWS SQS
【发布时间】:2020-12-26 04:34:45
【问题描述】:

我在本地成功地将 Celery 与 Django 和 AWS SQS 连接起来!!现在,我想部署我的 Django 项目。我需要像这样启动我的 Celery worker(我通常在本地终端执行此操作):

celery -A my_project worker -l info

部署后如何执行此操作?谢谢!!

【问题讨论】:

    标签: amazon-web-services amazon-elastic-beanstalk celery


    【解决方案1】:

    更新: 根据 OP,正在使用弹性豆茎,因此修改了响应

    在您的代码根文件夹中创建一个名为 .ebextensions 的新目录

    在该文件夹中添加一个文件<your file name>.config 并添加以下内容

    commands:
      create_post_dir:
        command: "mkdir -p /opt/elasticbeanstalk/hooks/appdeploy/post"
        ignoreErrors: true
    files:
      "/opt/elasticbeanstalk/hooks/appdeploy/post/start_celery.sh":
        mode: "000755"
        owner: root
        group: root
        content: |
          #!/usr/bin/env bash
          celery -A my_project worker -l info
    

    注意:这可能还有更多,这取决于 celery 需要正确启动的其他配置、环境或安装。但至少这应该让你开始。

    【讨论】:

    • 嘿!非常感谢您的回复!!我实际上正在使用 Elastic Beanstalk。我认为这可以工作(stackoverflow.com/questions/28586837/…),但我真的不明白如何使用它。谢谢!!
    • @NGI 更新了回复,提供了有关 ebs 的更多信息,希望能帮助您入门。
    • @NGI 我也刚刚发现这篇文章还有stackoverflow.com/a/41161692/14167216,它提供了可扩展性。但是,一旦您准备好进入该领域,它就会变得更加详细。但我建议使用提供的简单脚本,并在您认为合适的情况下进入更复杂的设置。
    • 会的!非常感谢您的帮助!
    猜你喜欢
    • 2011-12-24
    • 2012-12-01
    • 2020-06-10
    • 1970-01-01
    • 2022-10-17
    • 2018-07-18
    • 2017-04-26
    • 1970-01-01
    • 2020-03-04
    相关资源
    最近更新 更多