[Fixed]-Gunicorn settings for virtualenvwrapper

1👍

virtualenvwrapper is supposed to be what you use in development. You want to deploy using the package that virtualenvwrapper is built on—the virtualenv package. The best suggestion I have for you for how to make this work would be to try the steps that you would normally use to start your virtualenvwrapper environment, namely sourcing the shell script and then using workon:

NAME="yogavidya"                              #Name of the application (*)
DJANGODIR=/home/ytsejam/public_html/abctasarim     # Django project directory (*)
SOCKFILE=/home/ytsejam/public_html/abctasarim/run/gunicorn.sock        # we will communicate using this unix socket (*)
USER=ytsejam                                        # the user to run as (*)
GROUP=webdata                                     # the group to run as (*)
NUM_WORKERS=1                                     # how many worker processes should Gunicorn spawn (*)
DJANGO_SETTINGS_MODULE=yogavidya.settings.base           # which settings file should Django use (*)
DJANGO_WSGI_MODULE=yogavidya.wsgi                     # WSGI module name (*)

echo "Starting $NAME as `whoami`"

# Activate the virtual environment
cd $DJANGO_DIR
source /path/to/virtualenvwrapper.sh
workon yv_dev

You should also just try invoking gunicorn from the command line after activating your virtualenv.


Here’s how you can do it with virtualenv:

cd /home/ytsejam/public_html/abctasarim 
sudo pip install virtualenv
virtualenv .
. bin/activate
pip install -r requirements.txt
pip install gunicorn

gunicorn script:

NAME="yogavidya"                              #Name of the application (*)
DJANGODIR=/home/ytsejam/public_html/abctasarim     # Django project directory (*)
SOCKFILE=/home/ytsejam/public_html/abctasarim/run/gunicorn.sock        # we will communicate using this unix socket (*)
USER=ytsejam                                        # the user to run as (*)
GROUP=webdata                                     # the group to run as (*)
NUM_WORKERS=1                                     # how many worker processes should Gunicorn spawn (*)

cd $DJANGO_DIR
. bin/activate

# Create the run directory if it doesn't exist
RUNDIR=$(dirname $SOCKFILE)
test -d $RUNDIR || mkdir -p $RUNDIR

exec /home/ytsejam/public_html/abctasarim/bin/gunicorn  \
  --name $NAME \
  --workers $NUM_WORKERS \
  --user $USER \
  --bind=unix:$SOCKFILE yogavidya.wsgi:application
👤2ps

Leave a comment