This repository has been archived on 2023-02-21. You can view files and clone it, but cannot push or open issues or pull requests.
polynum/help/fr/install.page

215 lines
7.2 KiB
Plaintext

<page xmlns="http://projectmallard.org/1.0/"
type="guide" style="task"
id="install" xml:lang="fr">
<info>
<link type="guide" xref="index"/>
<desc>Pour installation et configurer le logiciel Polynum.</desc>
<title type="sort">9</title>
</info>
<title>Administrateurs techniques</title>
<p>
Cette partie de la documentation est dédiée aux administrateurs système qui
doivent installer l'application web Polynum.
</p>
<links type="section"/>
<section id="installation-fichiers">
<title>Installation des fichiers</title>
<p>L'installation se fait depuis un paquet (deb ou RPM) ou depuis les sources,
tous disponibles sur <link href="https://sourcesup.cru.fr/projects/polynum/">SourceSup</link>.
</p>
<p>L'application étant programmée en Python (Django), il n'y a pas d'étape de
compilation, les fichiers doivent juste être placés aux bons endroits.</p>
<p>
Dans la suite, l'arborescence des fichiers est la suivante :
</p>
<table frame="" shade="rows">
<tr><td><p><code>/opt/polynum</code></p></td><td><p>répertoire de l'application</p></td></tr>
<tr><td><p><code>/opt/polynum/polynum</code></p></td><td><p>code de l'application Django Polynum</p></td></tr>
<tr><td><p><code>/opt/polynum/bin</code></p></td><td><p>scripts associés au projet</p></td></tr>
<tr><td><p><code>/opt/polynum/virtualenv</code></p></td><td><p>environnement virtuel Python (voir plus loin)</p></td></tr>
<tr><td><p><code>/etc/polynum</code></p></td><td><p>répertoire de configuration</p></td></tr>
<tr><td><p><code>/var/lib/polynum</code></p></td><td><p>répertoire des données (fichiers PDF)</p></td></tr>
</table>
</section>
<section id="installation-modules">
<title>Installation des modules Python et du <code>virtualenv</code></title>
<p>On distingue deux types de modules Python nécessaires au fonctionnement de
Polynum : les modules standards qui seront installés de façon classique sur le
système d'exploitation, et les modules plus récents ou non packagés qui seront
installés dans un <em>environnement virtuel</em> (<code>virtualenv</code>)
Python.</p>
<section id="installation-modules-std">
<title>Installation des modules standards</title>
<p>Si Polynum est installé depuis un paquet (deb ou RPM), les paquets standards
sont installés automatiquement. Sinon il faut les installer avec <code>apt-get</code>
ou <code>yum</code>, selon votre distribution :</p>
<table frame="" shade="rows">
<title>Modules standards (installés par le paquet)</title>
<thead><tr><td><p>nom</p></td><td><p>description</p></td>
<td><p>deb</p></td><td><p>RPM</p></td></tr></thead>
<tr>
<td><p><code>psycopg2</code></p></td>
<td><p>connexion avec la base de données PostgreSQL.</p></td>
<td><p><code>python-psycopg2</code></p></td>
<td><p><code>python-psycopg2</code></p></td>
</tr>
<tr>
<td><p><code>ldap</code></p></td>
<td><p>connexion avec l'annuaire LDAP</p></td>
<td><p><code>python-ldap</code></p></td>
<td><p><code>python-ldap</code></p></td>
</tr>
</table>
</section>
<section id="installation-modules-virtualenv">
<title>Installation des autres modules Python</title>
<p>Les autres paquets seront installés dans un <em>virtualenv</em>. Dans la suite
de ce document, il est créé dans <code>/opt/polynum/virtualenv</code>.</p>
<note>
<p>Si besoin, le script <code>/opt/polynum/bin/polynum-build-virtualenv</code>
va créer automatiquement le répertoire <code>/opt/polynum/virtualenv</code>
contenant tous les modules nécessaires.</p>
</note>
<table frame="" shade="rows">
<title>Modules placés dans un <code>virtualenv</code></title>
<thead><tr><td><p>nom (pypi)</p></td><td><p>description</p></td></tr></thead>
<tr>
<td><p><code>django</code></p></td>
<td><p>version 1.4</p></td>
</tr>
<tr>
<td><p><code>south</code></p></td>
<td><p></p></td>
</tr>
<tr>
<td><p><code>django-crispy-forms</code></p></td>
<td><p></p></td>
</tr>
<tr>
<td><p><code>django-sekizai</code></p></td>
<td><p></p></td>
</tr>
<tr>
<td><p><code>django-cas</code></p></td>
<td><p>prendre la version compatible avec Django 1.4 : <code>https://bitbucket.org/cpcc/django-cas/get/tip.tar.gz</code></p></td>
</tr>
<tr>
<td><p><code>django-grappelli</code></p></td>
<td><p>prendre la version compatible avec Django 1.4 : <code>git+https://github.com/sehmaschine/django-grappelli@grappelli_2_4</code></p></td>
</tr>
<tr>
<td><p><code>pypdf</code></p></td>
<td><p></p></td>
</tr>
<tr>
<td><p><code>flup</code></p></td>
<td><p></p></td>
</tr>
<tr>
<td><p><code>django-debug-toolbar</code></p></td>
<td><p></p></td>
</tr>
</table>
</section>
</section>
<section id="virtualenv">
<title>Utilisation du <code>virtualenv</code></title>
<note style="warning">
<p>
Dans la suite du document, on travaillera dans l'environnement virtuel Python
créé ci-dessus. Pour cela, taper les commandes suivante depuis un shell <code>bash</code> :</p>
<screen>
<output style="prompt"># </output><input>cd /opt/polynum/virtualenv</input>
<output style="prompt"># </output><input>. bin/activate</input>
<output style="prompt">(virtualenv)# </output>
</screen>
<p>
Ceci est indispensable car Polynum a besoin des modules du <code>virtualenv</code>
pour s'exécuter.
</p>
</note>
</section>
<section id="installation-config">
<title>Configuration de base l'application</title>
<p>La configuration de l'application se fait dans <code>/etc/polynum/local_settings.py</code></p>
<p>Un fichier d'exemple <code>local_settings.py.example</code> est fourni avec
Polynum, c'est un modèle pour la création de
<code>/etc/polynum/local_settings.py</code> : il contient la liste des
paramétrages possibles avec explications et exemples.</p>
<p>Si vous avez installé Polynum à partir du paquet, le modèle est placé
dans <code>/usr/share/doc/polynum/</code>, il vous suffit donc de faire :</p>
<screen>
<output style="prompt"># </output><input>cd /etc/polynum</input>
<output style="prompt"># </output><input>cp /usr/share/doc/polynum/local_settings.py.example local_settings.py</input>
<output style="prompt"># </output><input>vi local_settings.py</input>
</screen>
</section>
<section id="installation-sql">
<title>Installation de la base de données</title>
<p>TODO</p>
</section>
<section id="installation-init">
<title>Mise en place des données initiales</title>
<p>TODO</p>
</section>
<section id="installation-auth">
<title>Configuration de l'authentification</title>
<p>Polynum peut authentifier les utilisateurs via CAS et LDAP. Dans
<code>/etc/polynum/local_settings.py</code> adapter les paramètres suivants
:</p>
<code>
(... extrait de /etc/polynum/local_settings.py ...)
CAS_SERVER_URL = "https://cas.univ.fr/" # CAS server URL
LDAP_URL = "ldaps://ldap.univ.fr" # LDAP server URL
LDAP_BIND_DN = "uid=...,ou=...,dc=..." # DN to authenticate to the LDAP server
LDAP_BIND_PASSWORD = "..." # password
LDAP_USER_QUERY = "supannAliasLogin=%s" # query to retrieve user, %s is CAS username
LDAP_BASE = "dc=univ,dc=fr" # base DN for the query
</code>
</section>
<section id="installation-run">
<title>Lancement de l'application</title>
<p>TODO</p>
</section>
<section id="installation-reverseproxy">
<title>Mise en production derrière un reverse-proxy</title>
<p>TODO</p>
</section>
</page>