[英]How to instruct Heroku NOT to run collectstatic automatically on deploy?
我在GitHub上有一個基於Django的項目,我希望每個人都能夠使用一鍵式部署按鈕進行部署。 它不使用django.contrib.staticfiles
應用程序。
我在項目的根目錄下有以下app.json
文件:
{
"name": "Django project",
"description": "A hello world Django-based project",
"repository": "https://github.com/john-doe/django-project",
"keywords": ["python", "django"],
"scripts": {
"postdeploy": "python manage.py migrate --noinput"
},
"addons": [
"heroku-postgresql"
],
"success_url": "/",
"env": {
"SECRET_KEY": {
"description": "A randomly generated secret to secure your Django installation.",
"generator": "secret"
}
}
}
問題是,即使我在INSTALLED_APPS
列表中沒有'django.contrib.staticfiles'
,當有人試圖部署我的應用程序時,Heroku會自動運行python manage.py collectstatic --noinput
,導致構建失敗。
如何指示Heroku不要在部署時運行collectstatic
?
只需將"DISABLE_COLLECTSTATIC": { "value": "1" }
到app.json
env
對象,如下所示:
"env": {
"DISABLE_COLLECTSTATIC": {
"description": "Don't run python manage.py collectstatic --noinput on deploy",
"value": "1"
}
}
如果您的現有Heroku應用程序具有以下命令,您也可以從終端執行此操作:
heroku config:set DISABLE_COLLECTSTATIC=1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.