Commit 430ab820 authored by Nicolas G.'s avatar Nicolas G.

Ajustements pour mise en production.

parent 742fd588
Comment l'installer en production ?
=================================
_Ce document détaille seulement le cas d'une installation avec Apache 2 (wsgi) avec une base SQLite_
_Ce document détaille seulement le cas d'une installation avec Apache 2 (wsgi) avec une base SQLite en utilisant un environement virtuel Python (virtualenv)_
N'oubliez pas de renommer le fichier settings-dist.py en settings.py et de l'adapter à vos besoins.
N'oubliez pas de créer le fichier localsettings.py et de l'adapter à vos besoins.
1- Copier les fichiers dans le répertoire de destination par exemple /var/www/django/fj
# Créer un environnement virtuel (facultatif)
2- Installer si besoin quelques paquets (Debian) :
libapache2-mod-wsgi libpython2.6 libpython2.7 python-django python-sqlite
python-pyspatialite spatialite-bin
python-gdal et les dépendances (proj-bin proj-data python3-pyproj libproj-dev gdal-bin python-gdal ...)
Si ce n'est pas déjà fait, installer les paquets (sous Debian) nécessaires :
3- Modifier les préférences dans firstjeudy/settings.py (utilisez http://www.miniwebtool.com/django-secret-key-generator/ pour générer une SECRET_KEY)
# apt-get install python-virtualenv virtualenvwrapper
4- Créer la base :
Créer l'environnement :
Préparer la base de données supportant les coordonnées géospatiales :
$ mkvirtualenv firstjeudy --no-site-packages
$ spatialite db.geodjango "SELECT InitSpatialMetaData();"
À partir de maintenant, l'on considère que vous travaillez dans votre environement virtuel :
Il faut python-pysqlite2 pour que Spatialite fonctionne. Sinon, erreur suivante à la synchro de la base de données. _« ImproperlyConfigured: The pysqlite library does not support C extension loading. Both SQLite and pysqlite must be configured to allow the loading of extensions to use SpatiaLite. »_
$ workon firstjeudy
La commande suivante permettra de créer les tables nécessaires au système de fonctionner :
# Copier les fichiers dans le répertoire de destination par exemple /var/www/django/fj
Par exemple avec Git :
$ python manage.py syncdb
$ git clone https://gitlab.com/microniko/firstjeudy.git
Répondez aux questions posées.
# Installer les paquets nécessaires
$ pip install -r requirements.txt
# Créer le fichier firstjeudy/localsettings.py :
- SECRET_KEY : utilisez http://www.miniwebtool.com/django-secret-key-generator/ pour la générer.
- DATABASES : si la configuration par défaut (dans settings.py) ne vous convient pas.
- DEBUG = False
- TEMPLATE_DEBUG = False
- ALLOWED_HOSTS = ['fqdn']
- STATIC_ROOT="/var/...." : localisation des fichiers statiques
- ADMINS : liste des admins
- STATICFILES_DIRS = () : doit être vide en production
# Créer la base de données
4- Installer https://pypi.python.org/pypi/django-wysiwyg-redactor
$ python manage.py syncdb
5- Créer un hôte virtuel Apache (voir le fichier correspondant et l'adapter : vhost_apache.conf) (l'activer et redémarrer Apache) Attention : "If you are using a version of Apache older than 2.4, replace Require all granted with Allow from all"
Répondez aux questions posées.
6- Lancer la commande suivante pour récupérer les fichiers statiques :
# Lancer la commande suivante pour récupérer les fichiers statiques :
$ python manage.py collectstatic
7- Relancer Apache
Assurez-vous que STATICFILES_DIRS est bien vide !
# Créer un hôte virtuel Apache
- Voir le fichier correspondant et l'adapter : vhost_apache.conf
- Activer l'hôte virtuel et redémarrer Apache
__Attention : "If you are using a version of Apache older than 2.4, replace Require all granted with Allow from all"__
8- Rendez-vous dans /admin/ pour administrer votre Firstjeudy (utilisez le _superutilisateur_ créé à l'étape 4 pour vous connecter).
# Rendez-vous dans /admin/ pour administrer votre Firstjeudy (utilisez le _superutilisateur_ créé à l'étape 4 pour vous connecter).
......@@ -18,7 +18,7 @@ Sur www.firstjeudi.org, actuellement utilisé par le GULL breton Rhizomes.
Installation
============
Voir le fichier INSTALL
Voir le fichier INSTALL.md
Traductions
===========
......
......@@ -3,7 +3,6 @@ argparse==1.2.1
django-ckeditor==4.4.6
django-geojson==2.6.0
django-leaflet==0.15.0
django-tinymce==1.5.3
jsonfield==1.0.0
python-dateutil==2.2
six==1.8.0
......
# Configuration pour Django (04/02/2014)
#
# Configuration pour Django (03/12/2014)
# À adapter en fonction des besoins et de la config locale !
# https://docs.djangoproject.com/fr/1.6/howto/deployment/wsgi/modwsgi/
# Avec le VHost en ++
<VirtualHost *:80>
......@@ -8,9 +8,9 @@ ServerName django.localdomain
# Process à part pour chaque appli Django.
WSGIDaemonProcess firstjeudy display-name=%{GROUP} python-path=/var/www/firstjeudy
WSGIProcessGroup firstjeudy
WSGIPythonPath /var/www/firstjeudy:/chemin/vers/env/virtuel/lib/python2.7/site-packages
WSGIScriptAlias / /var/www/firstjeudy/firstjeudy/wsgi.py
#WSGIPythonPath /var/www/firstjeudy
Alias /static /var/www/firstjeudy/static
Alias /static/admin/css /var/www/firstjeudy/admin/css
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment