簡體   English   中英

在 Heroku 服務器上上傳 Django 項目

[英]Uploading a Django project on Heroku Server

我將我的 Django 項目上傳到 Heroku,我在瀏覽器上收到此錯誤消息,如屏幕截圖所示

在此處輸入圖像描述

但是當我檢查管理員的日志時,我看到下面這條消息:

2019-05-14T21:26:26.138333+00:00 app[web.1]: bash: gunicorn: command not found

但是gunicorn包含在我的requirements.txt文件中:

dj-database-url==0.5.0
Django==2.2.1
django-heroku==0.3.1
gunicorn==19.9.0
psycopg2==2.8.2
pytz==2019.1
sqlparse==0.3.0
whitenoise==4.1.2

我還有一個PipfilePipfile.lock

為什么 Heroku 找不到gunicorn

一般來說,您應該使用requirements.txtPipfilePipfile.lock 他們做大致相同的事情,但使用不同的工具。

PipfilePipfile.lock是較新的標准。 如果它們存在,Heroku 會使用Pipenv安裝依賴項。 在這種情況下, requirements.txt文件將被忽略。

你應該

  1. 選擇使用 Pipenv。

    1. 您的要求可能已經列在PipfilePipfile.lock中,但為了確定起見,請在本地運行pipenv install -r requirements.txt
    2. 使用git rm requirements.txt requirements.txt
    3. 提交此更改,例如git commit -m 'Switch from pip to Pipenv'
    4. 推送到 Heroku。
  2. 選擇使用pip

    1. 閱讀你的Pipfile看看里面是否有你可能需要的東西。 該文件不僅僅列出依賴項。

      例如,您的Pipfile可能會在[requires]部分指定所需的 Python 版本,如python_version = '3.7' 這不能在requirements.txt中表示,因此您需要創建一個runtime.txt文件來指定您的 Python 版本。

      您可能還想為開發依賴項創建第二個需求文件。

    2. 使用git rm Pipfile Pipfile.lock刪除PipfilePipfile.lock

    3. 提交,例如git commit -m 'Revert from Pipenv to pip

    4. 推送到 Heroku。

我將我的 Django 項目上傳到 Heroku,我在瀏覽器上收到此錯誤消息,如屏幕截圖所示

在此處輸入圖片說明

但是當我檢查管理員的日志時,我看到以下消息:

2019-05-14T21:26:26.138333+00:00 app[web.1]: bash: gunicorn: 命令未找到

但是gunicorn包含在我的requirements.txt文件中:

dj-database-url==0.5.0
Django==2.2.1
django-heroku==0.3.1
gunicorn==19.9.0
psycopg2==2.8.2
pytz==2019.1
sqlparse==0.3.0
whitenoise==4.1.2

我也有一個PipfilePipfile.lock

為什么 Heroku 找不到gunicorn

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM