Projet esup-ecm

Recherche

Sommaire

Pages enfant
  • Installation de ESUP-ECM (Obsolète)

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Balise Wiki
{toc}

h1. Pré-requis

ESUP-ECM est prévu pour être installé sur une machine unix (Par              exemple Linux).
{note:title=Note}Une installation Windows est possible mais certains scripts ne                   fonctionneront pas sur cette plateforme.
{note}
On s'attend à trouver sur la machine un JDK en version 5 (La version              6 n'est pas encore officiellement supportée par nuxeo).

Nuxeo fonctionne avec un serveur d'applications JBOSS (livré avec le              package ESUP-ECM). Nous recommandons de créer un utilisateur dédié (par              exemple *jboss*) qui sera utilisé pour faire faire              tourner JBOSS.
{warning:title=Attention}l'utilisateur jboss doit avoir un *JAVA_HOME*, pointant vers un JDK en version 5, positionné dans son *.basrc* (ex : *export JAVA_HOME=/opt/jdk1.5.0*)
{warning}
On s'attend également à ce que *ant* et *maven* soient présents sur la machine. De plus, maven              doit être présent dans le path (exemple, si besoin, de positionnement du              path : *export                 PATH=$PATH:/opt/apache-ant-1.7/bin:/opt/apache-maven-2.0.9/bin*)

De même, ESUP-ECM nécessite une base de données transactionnelle avec              un mécanisme de sauvegarde en ligne. Il est conseillé d'utiliser un serveur permettant de sauvegarder/restaurer les données de façon incrémentale.Pour cette raison, cette version de              ESUP-ECM est préconfigurés pour PostgreSQL. La version 8.3 n'étant pas              encore officiellement supportée par nuxeo nous vous demandons d'avoir              accès un serveur postgreSQL en version 8.1 ou 8.2.

ESUP-ECM fonctionne aussi avec mysql . Dans ce cas, il est nécessaire d'utiliser le service de gestion des transactions InnoDB.
Vérifiez la présence de la ligne suivante dans my.cnf : *default-storage_engine = innodb*

Nous recommandons de              créer deux bases :
* Une base pour la gestion du repository des documents : nuxeo_storage
* Une base pour tous les autres besoins (indexation,recherche,gestion des relations,...)  de la                           solution : nuxeo

 Pour mysql, le script sql de création des bases pourrait ressembler à :
{quote}
create user nuxeo;
set password for 'nuxeo'@'%' = password('XXXXX');
create database `nuxeo` default character set utf8 collate utf8_general_ci;
grant all privileges on nuxeo.\* to 'nuxeo'@'%';
create database `nuxeo_storage` default character set utf8 collate utf8_general_ci;
grant all privileges on nuxeo_storage.\* to 'nuxeo'@'%';
{quote}
L'utilisation du *serveur Open Office* est recommandée . Ce serveur (et son patch nuxeo) transforme à la volée les documents (de tout format) en format pdf.

Son installation est détaillée dans cette page.

h1. Installation


h2. Résumé

* Télécharger *esup-ecm-<version>.zip* depuis le site du                                projet
* Décompresser le fichier dans un répertoire de travail
* Copier le fichier *build-example.properties* en *build.properties*
* Adapter le contenu du fichier *build.properties*. Cf. paragraphe                             suivant pour plus d'informations.
* Positionner *JAVA_HOME* (ex : *export                                JAVA_HOME=/opt/jdk1.5.0*)
* Lancer la commande *ant deploy*
{note:title=note}Si vous utilisez un serveur proxy il faut :
* Pour ANT : Définir les variables d'environnements&nbsp; *export ANT_OPTS="-Dhttp.proxyHost=proxy-host.domain.org \-Dhttp.proxyPort=1234"* pour les téléchargements initiaux.
* Pour NAVEN : Editer le fichier *.m2/settings.xml* contenu dans votre home_dir
{code}
<settings>
   <proxies>
      <proxy>
         <active>true</active>
         <protocol>http</protocol>
         <host>proxy-host.domain.org</host>
         <port>1234</port>
         <nonProxyHosts>*.univ.fr|localhost</nonProxyHosts>
      </proxy>
   </proxies>
</settings>
{code}
{note}
* *Créer l'utilisateur* défini par la valeur de *jboss.user*
* Attribuer les droits d'exécution aux shells sous *<nuxeo.dir.parent>/nuxeo-ep-5.1.6.GA{*}*/bin*
* Lancer le serveur par *sh* *<nuxeo.dir.parent>/nuxeo-ep-5.1.6.GA{*}*/bin/jbossctl                                start &*
* Tester *http://<nomServeur>:<portHttpToncat>/nuxeo*

h2. Paramètres du build.properties

|| Paramètre || Description \\ || Exemple \\ ||
| nuxeo.dir.parent | Répertoire où sera déployé                                               l'application | /opt/nuxeo |
| nuxeo.url | URL utilisé pour les interactions avec CAS lors de différentes actions (login, logout). Le port correspond à tomcat.port.http si tomcat est utilisé directement. En cas d'utilisation d'un frontal apache, le port à utiliser ici est celui du frontal. | [http://localhost:8080/nuxeo] \\ |
| jboss.console.log | Fichier de trace de la console jboss. Il se trouve par défaut sous&nbsp; *<nuxeo.dir.parent>/nuxeo-5.1.6.GA/server/default/log&nbsp;&nbsp;* | /var/log/nuxeo-console.log |
| jboss.server.log | Fichier de trace du serveur jboss. Il se trouve par défaut sous&nbsp; *<nuxeo.dir.parent>/nuxeo-5.1.6.GA/server/default/log&nbsp;&nbsp;* | /var/log/nuxeo.log |
| db.type | Le type de la base de données utilisée . \\
Saisir la valeur&nbsp; "*MySQL*" pour mysql, "*PostgreSQL*" pour postgresql \\ | MySQL \\
PostgreSQL |
| db.user | Nom de l'utilisateur pouvant lire                                               et écrire dans les bases de données | |
| db.password | Mot de passe conrespondant à l'utilisateur défini par db.user | e-%truc\! |
| db.driver | Nom de la classe java du driver                                               JDBC | com.mysql.jdbc.Driver \\
\\
org.postgresql.Driver |
| db.schema \\ | Nom du schéma \\ | mysql \\
postgresql |
| db.url | Chaîne de connexion à la base de données                                               nuxeo | jdbc:mysql://localhost/nuxeo \\
\\
jdbc:postgresql://localhost/nuxeo |
| db.mysql.jena.url | Particularité mysql : le paramètre *relaxAutoCommit=true* permet d'éviter les messages d'erreur lors des transactions quand autocommit=true \\ | jdbc:mysql://localhost/nuxeo?relaxAutoCommit=true |
| db.mysql.compass.url | Particularité mysql : idem paramètre précédent avec en plus&nbsp; *emulateLocators=true* permettant à compass de supporter&nbsp; les BLOBS \\ | jdbc:mysql://localhost/nuxeo?relaxAutoCommit=true&emulateLocators=true |
| rep.type \\
\\ | Type de repository de documents : \\
*JCR*&nbsp; ou *sql storage* (stockage Nuxeo conforme CMIS) \\ | jcr \\
sql |
| db.jcr.url | Chaine de connexion à la base de données JCR (si rep.type=jcr) \\ | jdbc:mysql://localhost/nuxeo_storage \\
jdbc:postgresql://localhost/nuxeo_storage |
| db.sql.server | Serveur de la base de données sql-storage (si rep.type=sql) \\ | localhost |
| db.sql.port | Port de base de données sql-storage (si rep.type=sql) | 3306 |
| db.sql.db | Nom de la base de données sql-storage (si rep.type=sql) | nuxeo_storage |
| db.sql.user | Utilisateur de la base de données sql-storage (si rep.type=sql) | |
| db.sql.password | Mot de passe correspondant à l'utilisateur de la base de données sql-storage (si rep.type=sql) | |
| jdk.home | Chemin d'accès au JDK | /opt/jdk1.5.0 |
| jboss.user | Nom de l'utilisateur qui lancera le                                               serveur d'application jboss | jboss |
| tomcat.port.http | port HTTP utilisé par le tomcat embarqué                                               par jboss pour répondre aux requêtes HTTP | 8080 |
| tomcat.port.jk | port AJP utilisé par le tomcat embarqué par jboss pour répondre aux requêtes AJP (utilisé dans le cas de l'utilisation d'un frontal apache) | 9554 |
| cas.url | URL d'accès au serveur CAS de                                               l'établissement | [https://sso.univ.fr] |
| ldap.url | URL d'accès au serveur LDAP de                                               référence | ldap://ldap.univ.fr:389 |
| ldap.user.searchBaseDn | Base DN utilisé lors des recherches                                               d'utilisateurs dans le LDAP | ou=people,dc=univ,dc=fr |
| ldap.user.firstName | Attribut LDAP contenant le nom des                                               l'utilisateurs | givenName |
| ldap.user.lastName | Attribut LDAP contenant le nom complert à                                               afficher pour les l'utilisateurs | sn |
| ldap.user.company | Attribut LDAP contenant l'organisme de rattachement des utilisateurs | supannOrganisme |
| ldap.user.email | Attribut LDAP contenant l'adresse                                               électronique des utilisateurs | mail |
| ldap.user.defaultAdministratorId | UID de l'administrateur de la                                               plateforme | \\ |
| ldap.group.searchBaseDn | Base DN utilisé lors des recherches de                                               groupes dans le LDAP | ou=groups,dc=univ,dc=fr |

h1. Installation du serveur Open Office

Consultez la page de référence à ce sujet : [http://doc.nuxeo.org/5.1/books/nuxeo-book/html/admin-openoffice.html]

h3. Installation du serveur X virtuel

&nbsp;&nbsp; Récupérer et installer un paquet Xvbf
&nbsp;&nbsp; par exemple, sur RedHat :&nbsp; _yum install XFree86-Xvfb-4.3.0-69.EL.x86_64.rpm_


h3. Installation OpenOffice 2.4

&nbsp;&nbsp;&nbsp; Il est conseillé d'installer la version 2 de openOffice.


&nbsp;&nbsp;&nbsp; Consultez le guide d'installation officiel : *{_}[http://fr.openoffice.org/Documentation/Guides/SETUP_GUIDE_FR08_1.pdf{]_}*


&nbsp;&nbsp;&nbsp; Par exemple, sur un serveur RedHat :
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _cd /tmp_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; wget [http://openoffice.cict.fr/stable/2.4.2/OOo_2.4.2_LinuxIntel_install_en-US.tar.gz_]
_&nbsp; &nbsp; &nbsp; tar \-zxvf OOo_2.4.2_LinuxIntel_install_en-US.tar.gz_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; yum install libgnomevfs-2.so.0_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cd&nbsp; cd OOH680_m18_native_packed-1_en-US.9364/RPMS/_
_&nbsp; &nbsp; &nbsp; rpm \-ivh \*.rpm_

h3. &nbsp;Configuration de OpenOffice pour Nuxeo


&nbsp;&nbsp;&nbsp;&nbsp; Deux extensions Nuxeo permettent de configurer OpenOffice en mode serveur de façon permanente.


_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_ _cd <path/to/esup-ecm>/esup-ecm-0.3_

_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; svn co_ _[http://svn.nuxeo.org/nuxeo/tools/ooo-package/linux]_ _nxOOo_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cd nxOOo_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; cp patch/bootstraprc <path/to/openoffice>/program/&nbsp;&nbsp;&nbsp;&nbsp;_
_&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; <path/to/openoffice>/program/unopkg add \--shared patch/nxSkipInstallWizard.oxt_&nbsp;&nbsp;&nbsp; (permet d'utiliser OO tout de suite après l'installation)
&nbsp;&nbsp;&nbsp; &nbsp; &nbsp;&nbsp; _<path/to/openoffice>/program/unopkg add \--shared patch/nxOOoAutoListen.oxt_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (permet de faire fonctionner OO en mode écoute de façon permanente)

&nbsp;&nbsp;&nbsp;


h3. Lancement/Arret de OOo en mode serveur

&nbsp; &nbsp; &nbsp;&nbsp; Voici un exampleexemple de script shell de lancement appelé&nbsp; *nxopenoffice* :
*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;* _\#\!/bin/sh_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _\#_
_\# &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_\# openoffice This shell script takes care of starting and stopping_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_\# openoffice server._
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_\#_

_\&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # See how we were called._
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_case "$1" in_
_start)_
_&nbsp; echo "Starting openoffice: "_
_&nbsp; Xvfb :8100 2>/dev/null &_
_&nbsp;&nbsp;&nbsp; sleep 5_
_&nbsp; /opt/openoffice.org2.4/program/soffice.bin \-headless "-accept=socket,host=localhost,port=8100;urp;StarOffice.Service" 2>/dev/null &_
_&nbsp; echo_
_;;_
_stop&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_start)_
_&nbsp;ps \-aef\|grep "program/soffice.bin" \| grep \-v grep\|cut \-c10-15 >/var/run/ooo.pid_
_&nbsp;val=`head /var/run/ooo.pid`_
_&nbsp;if \[ \-n $val \]_
_&nbsp; then_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; kill $val 2>/dev/null &&&nbsp;&nbsp; echo "ShuttingStarting down openoffice: " $val_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;fi_
_&nbsp;ps \-aef\|grep "Xvfb" \| grep \-v grep\|cut \-c10-15 >/var/run/xvfb.pid_
_&nbsp;val=`head /var/run/xvfb.pid`_
_&nbsp;if \[ \-n $val \]_
_&nbsp; then_
_ Xvfb :8100 2>/dev/null &_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; sleep 5_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; /opt/openoffice.org2.4/program/soffice.bin \-headless "-accept=socket,host=localhost,port=8100;urp;StarOffice.Service" 2>/dev/null &_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_;;_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_stop)_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ps \-aef\|grep "program/soffice.bin" \| grep \-v grep\|cut \-c10-15 >/var/run/ooo.pid_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; val=`head /var/run/ooo.pid`_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if \[ \-n $val \]_
_&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; then_
_&nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; kill $val 2>/dev/null && echo "Shutting down openoffice: " $val_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fi_
_&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; ps \-aef\|grep "Xvfb" \| grep \-v grep\|cut \-c10-15 >/var/run/xvfb.pid_
_&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; val=`head /var/run/xvfb.pid`_
_&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if \[ \-n $val \]_
_&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; then_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; kill $val 2>/dev/null && echo "Shutting down virtual xterm: " $val_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_fi&nbsp;&nbsp;&nbsp;&nbsp;_


_&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; echo_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_;;_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_restart)_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $0 stop_
_&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; $0 start_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_;;_

_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; kill $val 2>/dev/null && echo "Shutting down virtual xterm: " $val_
_&nbsp;fi_

_echo_
_;;_
_restart)_
_&nbsp; $0 stop_
_&nbsp; $0 start_
_;;_{_}status)_
_&nbsp;&nbsp; status)_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "Servers listening on port 8100 :"_
_&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; netstat \-na \| grep :8100 \| wc \-l_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; netstat \-na \| grep :8100_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "openoffice processes :"_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ps \-aef \| grep \-i program/soffice \| grep \-v grep_
_v grep_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; echo "X processes :"_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ps \-ef \| grep \-i xvfb \| grep \-v grep_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_;;_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_
_\*)_
_
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; _echo "Usage: nxopenoffice_ {start\|stop\|restart\|status} _\n"_

_&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; exit 1_
_&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; esac_

_&nbsp;&nbsp;&nbsp;&nbsp; exit 0_



*_&nbsp; &nbsp; &nbsp; Note :_* _ne pas oublier de positionner JAVA_HOME_&nbsp;


h5. &nbsp;



&nbsp; &nbsp;