From 3cb2c7632c4a2ac5d48681b11bf9df5ad389ca57 Mon Sep 17 00:00:00 2001 From: Edward Ribeiro Date: Mon, 14 Mar 2016 20:00:56 -0300 Subject: [PATCH] =?UTF-8?q?Configura=20gunicorn=20para=20m=C3=A1quina=20de?= =?UTF-8?q?=20homologa=C3=A7=C3=A3o/produ=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.rst | 12 +++++++++--- gunicorn_start.sh | 32 ++++++++++++++++++++++++++++++++ requirements/requirements.txt | 1 + 3 files changed, 42 insertions(+), 3 deletions(-) create mode 100755 gunicorn_start.sh diff --git a/README.rst b/README.rst index 637a90cd3..e77962fa9 100644 --- a/README.rst +++ b/README.rst @@ -1,4 +1,4 @@ -.. image:: https://badge.waffle.io/interlegis/sapl.png?label=ready&title=Ready +.. image:: https://badge.waffle.io/interlegis/sapl.png?label=ready&title=Ready :target: https://waffle.io/interlegis/sapl :alt: 'Stories in Ready' @@ -20,8 +20,8 @@ Development Environment Installation * Install the following system dependencies (command bellow for Ubuntu):: - sudo apt-get install git python3-dev libpq-dev graphviz-dev graphviz \ - postgresql postgresql-contrib pgadmin3 python-psycopg2 nodejs npm + sudo apt-get install git nginx python3-dev libpq-dev graphviz-dev graphviz \ + pkg-config postgresql postgresql-contrib pgadmin3 python-psycopg2 nodejs npm \ sudo ln -s /usr/bin/nodejs /usr/bin/node @@ -31,6 +31,12 @@ Development Environment Installation * Fork and clone this repository, following the instructions in https://help.github.com/articles/fork-a-repo. +* If you don't have pip installed then execute the following instructions: + + sudo apt-get install python-pip python-dev build-essential + sudo pip install --upgrade pip + sudo pip install --upgrade virtualenv + * Create a virtualenv using python 3 for the project and activate it. If you use `virtualenvwrapper `_:: diff --git a/gunicorn_start.sh b/gunicorn_start.sh new file mode 100755 index 000000000..d97734c68 --- /dev/null +++ b/gunicorn_start.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +# As seen in http://tutos.readthedocs.org/en/latest/source/ndg.html + +NAME="sapl" # Name of the application (*) +DJANGODIR=`pwd` # Django project directory (*) +SOCKFILE=`pwd`/run/gunicorn.sock # we will communicate using this unix socket (*) +USER=`whoami` # the user to run as (*) +GROUP=`whoami` # the group to run as (*) +NUM_WORKERS=1 # how many worker processes should Gunicorn spawn (*) +DJANGO_SETTINGS_MODULE=sapl.settings # which settings file should Django use (*) +DJANGO_WSGI_MODULE=sapl.wsgi # WSGI module name (*) + +echo "Starting $NAME as `whoami`" + +# Activate the virtual environment +#cd $DJANGODIR +#source /var/www/test/venv/bin/activate +export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE +export PYTHONPATH=$DJANGODIR:$PYTHONPATH + +# Create the run directory if it doesn't exist +RUNDIR=$(dirname $SOCKFILE) +test -d $RUNDIR || mkdir -p $RUNDIR + +# Start your Django Unicorn +# Programs meant to be run under supervisor should not daemonize themselves (do not use --daemon) +exec gunicorn ${DJANGO_WSGI_MODULE}:application \ + --name $NAME \ + --workers $NUM_WORKERS \ + --user $USER \ + --bind=unix:$SOCKFILE diff --git a/requirements/requirements.txt b/requirements/requirements.txt index 3e7e04641..5b3d8bc2d 100644 --- a/requirements/requirements.txt +++ b/requirements/requirements.txt @@ -19,3 +19,4 @@ pyyaml==3.11 rtyaml==0.0.2 unipath==1.1 python-magic==0.4.10 +gunicorn==19.4.5