【问题标题】:How to start other Servers Automatically after Django Server startsDjango Server启动后如何自动启动其他服务器
【发布时间】:2019-01-15 06:32:33
【问题描述】:

我在 Django 服务器旁边使用不同的服务器。例如 MongoDB 服务器和 Celery[command]

我想问一下,如何在启动“**”时自动执行其他CMD命令

python manage.py runserver

**"

【问题讨论】:

标签: python django


【解决方案1】:

取决于您使用的操作系统,在我的 Ubuntu 上进行本地开发,我这样做:

创建 .sh 脚本。例如start_project.sh 使用此代码:

cd /path/to/project
source /venv/bin/activate
python manage.py runserver & celery -A project worker --loglevel=debug

然后运行bash start_project.sh 您还可以添加更多命令以用 & 分隔开始

【讨论】:

    【解决方案2】:

    您应该编写一个 shell 脚本,其中包含启动每个服务的命令,然后使用它来运行您的项目。例如这里是一个示例:

    sudo service mongodb start
    celery -A worker appname.celery
    python manage.py runserver 0.0.0.0:80 > /dev/null 2>&1 &
    

    【讨论】:

      【解决方案3】:

      由于您使用术语 CMD,我猜您使用的是基于 Windows 的操作系统。然后我会说你可能安装了 mongoDB 服务? (否则将 mongoDB 重新安装为服务)。

      默认设置为自动启动(可更改为非自动启动)。如果你把 mongoDB 的服务改成手动启动方式,那么你可以在 CMD 中启动它

      net start mongoDB
      

      我不使用/不知道“Celery”是什么,但快速谷歌让它听起来像是某种消息。在我看来应该或者至少应该有一个服务安装,在这种情况下你应该使用它,然后按照 mongoDB 的描述使用自动启动/手动。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-08-25
        • 1970-01-01
        • 2013-05-31
        • 1970-01-01
        • 1970-01-01
        • 2012-10-26
        • 1970-01-01
        • 2013-12-25
        相关资源
        最近更新 更多