Django应用程序结构,

Django application structure,

我正在尝试将我的 Django 项目部署到 Google AppEngine,但是我不知道如何正确设置应用程序入口点。

这是我的整个项目结构:

app.yaml
main.py
service:
    manage.py
    service-project:
        wsgi.py
        settings.py
        ...
    service-app-1:
        ...
    service-app-2:
        ...

我怎样才能让它发挥作用?我试图将 main.py 移动到服务目录并在 app.yaml 中使用 entrypoint: gunicorn --chdir /service main:application 但结果是 Error: can't chdir to '/service',我猜 AppEngine 不允许更改目录。

您需要将 app.yaml 中的 entrypoint: gunicorn --chdir /service main:application 更改为 entrypoint: gunicorn --chdir ./service main:application

您看到 Error: can't chdir to '/service' 的原因是 gunicorn 正在尝试将目录更改为根目录中的服务文件夹。

在斜杠前添加点将使其更改目录到您项目中的服务文件夹,这是因为点指的是您的 app.yaml 所在的当前目录。