From a8d4ac9841fe7be63aed2ba33b171c21f0eb5f33 Mon Sep 17 00:00:00 2001 From: Leon Sandøy Date: Sat, 14 Nov 2020 21:18:04 +0100 Subject: Banish UWSGI from my life, replace with gunicorn. This gets rid of various uwsgi stuff that we will no longer be needing. Enter; gunicorn. --- manage.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'manage.py') diff --git a/manage.py b/manage.py index d4748a3a..62352177 100755 --- a/manage.py +++ b/manage.py @@ -10,7 +10,6 @@ import django from django.contrib.auth import get_user_model from django.core.management import call_command, execute_from_command_line - DEFAULT_ENVS = { "DJANGO_SETTINGS_MODULE": "pydis_site.settings", "SUPER_USERNAME": "admin", @@ -156,10 +155,8 @@ class SiteManager: call_command("runserver", "0.0.0.0:8000") return - import pyuwsgi - - # Run uwsgi for production server - pyuwsgi.run(["--ini", "docker/uwsgi.ini"]) + # Run gunicorn for production server + os.system("gunicorn --preload -b 0.0.0.0:8000 pydis_site.wsgi:application --threads 8 -w 4") def main() -> None: -- cgit v1.2.3 From f57357e9f468797493e811e67998345ad4ee0e7a Mon Sep 17 00:00:00 2001 From: Joe Banks Date: Sat, 14 Nov 2020 21:55:04 +0000 Subject: Don't call gunicorn using os.system, patch sys.argv and call the module --- manage.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'manage.py') diff --git a/manage.py b/manage.py index 62352177..446b1af3 100755 --- a/manage.py +++ b/manage.py @@ -7,6 +7,7 @@ import time from typing import List import django +import gunicorn.app.wsgiapp from django.contrib.auth import get_user_model from django.core.management import call_command, execute_from_command_line @@ -155,8 +156,18 @@ class SiteManager: call_command("runserver", "0.0.0.0:8000") return - # Run gunicorn for production server - os.system("gunicorn --preload -b 0.0.0.0:8000 pydis_site.wsgi:application --threads 8 -w 4") + # Patch the arguments for gunicorn + sys.argv = [ + "gunicorn", + "--preload", + "-b", "0.0.0.0:8000", + "pydis_site.wsgi:application", + "--threads", "8", + "-w", "4" + ] + + # Run gunicorn for the production server. + gunicorn.app.wsgiapp.run() def main() -> None: -- cgit v1.2.3