Recherche

Sommaire

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

Introduction

Mise à jour

Cette documentation concerne les versions 1.0 et 1.1.X de ESUP-ECM.
Les versions qui entraînent une modification du paramétrage sont les versions 1.1.0 et 1.1.2

Si vous devez faire une mise à jour de ESUP-ECM lisez aussi la page Mise à jour de ESUP-ECM.

Esup-ECM correspond à un packaging de Nuxeo permettant de faciliter son installation et sa configuration par rapport aux besoins ressentis dans le projet Esup-ECM. Aussi, installer Esup-ECM correspond bel et bien à installer Nuxeo (Esup-ECM donne des orientations dans les possibilités de configurations offertes par Nuxeo).

Les chapitres abordés dans la documentation d'installation sont:

Pré-requis

Généralités

Nuxeo est prévu pour être installé sur une machine unix (Par exemple Linux).

Note

Une installation Windows est possible mais certains scripts ne fonctionneront pas sur cette plateforme.

On s'attend à trouver sur la machine un JDK en version 5 ou 6.

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.

Attention

L'utilisateur jboss doit avoir un JAVA_HOME, pointant vers un JDK, positionné dans son .basrc. Exemple:

export JAVA_HOME=/opt/jdk1.6.0

On s'attend également à ce que ant soit présent sur la machine.

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.

Base de données

Le choix du SGBD

Nuxeo 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é pour PostgreSQL.

Même si Nuxeo recommande/privilégie l'utilisation de PostgreSQL, ESUP-ECM a été rendu compatible avec Mysql.
Nous rappelons que la seule base de données préconisée officiellement par Nuxeo est PostgreSQL. La compatibilité avec MySQL est le résultat du travail d'intégration du projet ESUP-ECM.

Reportez vous à la documentation suivante pour connaître les raisons exprimées par Nuxeo sur l'utilisation exclusive de PostgreSQL: FAQ > Des raisons pour éviter d'utiliser MySQL avec Nuxeo

Les bases nécessaires

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

Il est extrêmement important de souligner les remarques spécifiques à chacun de ces 2 SGBD:

PostgreSQL

A partir de la version 5.2 de Nuxeo, il faut désormais priviligier une base de données 8.3.4+.

L'utilisation de PostgreSQL 8.3 nécessite la définition de certaines fonctions particulières. Avant de vous lancer dans l'installation, veuillez suivre la documentation suivante: http://doc.nuxeo.com/pages/viewpage.action?pageId=3343487

En plus de la création de la base et des recommandations sur la version 8.3 de PostgreSQL, il vous faut également sur la base de données qui contiendra le repository (nuxeo_storage ici) exécuter cette requête :

create language plpgsql;

Sans cela, vous obtenez quelque chose comme :

org.postgresql.util.PSQLException: ERREUR: le langage « plpgsql » n'existe pas
| Comme Nuxeo utilise la validation 'Two-phase Commit' en version PostgreSQL 8.4 on doit activer la variable max_prepared_transactions du fichier de configuration de postgresql postgresql.conf (ligne 110):max_prepared_transactions =64(Cette valeur étant commenté par défaut et valuée à 0.) |
Procédure avec template

Pour ne pas avoir à faire les réglages pour chaque base, on peut modifier le template1 de postgres, qui sera utilisé pour la création des bases Nuxeo.

La procédure ci-dessous reprend les inidcations des liens précédentsconcernant la customisation des bases postgreSQL en version 8.3.4+ pour Nuxeo.

Etape 1

Une fois postgreSQL installé :

su postgres
psql -d template1
# 1. changement du mot de passe admin
alter user postgres with password 'MDP';
# 2. modifs pour Nuxeo (voir plus bas)
CREATE FUNCTION pg_catalog.text(integer) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(int4out($1));';
CREATE CAST (integer AS text) WITH FUNCTION pg_catalog.text(integer) AS IMPLICIT;
COMMENT ON FUNCTION pg_catalog.text(integer) IS 'convert integer to text';
CREATE FUNCTION pg_catalog.text(bigint) RETURNS text STRICT IMMUTABLE LANGUAGE SQL AS 'SELECT textin(int8out($1));';
CREATE CAST (bigint AS text) WITH FUNCTION pg_catalog.text(bigint) AS IMPLICIT;
COMMENT ON FUNCTION pg_catalog.text(bigint) IS 'convert bigint to text';
create language plpgsql;
\q

Etape 2

Ensuite, on peut créer les bases Nuxeo qui vont hériter du template1 par défaut :

# 3. creation des bases Nuxeo
createdb nuxeo_storage
createdb nuxeo

MySQL

Dans le cas où vous utilisez MySQL, 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

Le script sql de création des bases pourrait ressembler à :

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'@'%';

Lorsque vous passerez à l'étape d'installation, à aucun moment ne vous sera demandé de créer les tables de la base de données. En effet, toutes les tables sont créées automatiquement lors du premier démarrage de ESUP-ECM.

Si vous utilisez MySQL, il est nécessaire de procéder à une modification d'un type d'attribut de la base de données avant de faire le premier dépôt.

En effet, dans la version courante de ESUP-ECM, le champ nécessaire au stockage du plein texte a un format trop restrictifs pour les fichiers de taille moyenne.

Les modifications à faire portent donc sur l'attribut binarytext dans la table fulltext.
Il faut changer son type de text à longtext.

Dans le cas où vous ne faites pas cette modification avant, vous obtiendrez certainement l'erreur suivante lors du dépôt d'un fichier trop volumineux:

Exception: com.mysql.jdbc.MysqlDataTruncation. message: Data truncation: Data too long for column 'binarytext' at row 1

Installation

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. paragraphes suivants pour plus d'informations.
  • Positionner JAVA_HOME (ex : export JAVA_HOME=/opt/jdk1.5.0)
  • Lancer la commande ant deploy

    Note

    Si vous utilisez un serveur proxy il faut :

    • Pour ANT : Définir les variables d'environnement export ANT_OPTS="-Dhttp.proxyHost=proxy-host.domain.org -Dhttp.proxyPort=1234" pour les téléchargements initiaux.
    • Pour MAVEN : Editer le fichier .m2/settings.xml contenu dans votre home_dir
      <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>
      
  • 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-dm-5.2.0/bin
  • Lancer le serveur par la commande

    sh <nuxeo.dir.parent>/nuxeo-dm-5.2.0/bin/jbossctl start &

  • Tester http://<nomServeur>:<portHttpTomcat>/nuxeo

Paramètres du build.properties

Paramètre

Description

Version

Exemple

Paramètres globaux

 

 

 

nuxeo.dir.parent

Répertoire où sera déployé l'application

1.0

/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.

1.0

http://localhost:8080/nuxeo

jboss.bind.address

Interface réseau sur laquelle le serveur JBOSS écoute  (0.0.0.0 pour écouter sur toutes les interfaces) Voir plus bas section "Interfaces réseau"

1.0

147.127.96.21

jboss.console.log

Fichier de trace de la console jboss. Il se trouve par défaut sous  <nuxeo.dir.parent>/nuxeo-dm-5.2.0/server/default/log  

1.0

/var/log/nuxeo-console.log

jboss.server.log

Fichier de trace du serveur jboss. Il se trouve par défaut sous  <nuxeo.dir.parent>/nuxeo-dm-5.2.0/server/default/log  

1.0

/var/log/nuxeo.log

jboss.log4j.level

Niveau de logs du serveur JBOSS. Ce niveau vaut par défaut INFO.

1.0

INFO
DEBUG

Connexion à la base de données

 

 

 

db.type

Le type de la base de données utilisée .
Saisir la valeur  "MySQL" pour mysql, "PostgreSQL" pour postgresql

1.0

PostgreSQL
MySQL

db.driver

Nom de la classe java du driver JDBC

1.0

org.postgresql.Driver
com.mysql.jdbc.Driver

db.jdbc.options

options à passer au driver JDBC (vide par défaut)

1.1

?sessionVariables=binlog_format=ROW

db.server

Serveur de la base de données nuxeo

1.1.2

localhost

db.port

Port de base de données nuxeo

1.1.2

3306 si base mysql
5432 si base  postgresql

db.name

Nom de la base de données nuxeo

1.1.2

nuxeo

db.user

Nom de l'utilisateur pouvant lire et écrire dans les bases de données

1.0

 

db.password

Mot de passe conrespondant à l'utilisateur défini par db.user

1.0

e-%truc!

db.schema

Nom du schéma

A partir de la 1.1.2 ce paramètre n'est plus utilisé

1.0

postgresql
mysql

db.url

Chaîne de connexion à la base de données nuxeo

A partir de la 1.1.2 ce paramètre est remplacé par db.server, db.port et db.name


1.0

jdbc:postgresql://localhost/nuxeo
jdbc:mysql://localhost/nuxeo

Base de données "repository"

 

 

 

db.storage.server

Serveur de la base de données sql-storage

1.1.2

localhost

db.storage.port

Port de base de données sql-storage

1.1.2

3306 si base mysql
5432 si base  postgresql

db.storage.name

Nom de la base de données sql-storage

1.1.2

nuxeo_storage

db.storage.user

Utilisateur de la base de données sql-storage

1.1.2

 

db.storage.password

Mot de passe correspondant à l'utilisateur de la base de données sql-storage

1.1.2

 

db.sql.server

Serveur de la base de données sql-storage

A partir de la 1.1.2 ce paramètre est remplacé par db.storage.server

1.0

localhost

db.sql.port

Port de base de données sql-storage

A partir de la 1.1.2 ce paramètre est remplacé par db.storage.port


1.0

3306 si base mysql
5432 si base  postgresql

db.sql.db

Nom de la base de données sql-storage

A partir de la 1.1.2 ce paramètre est remplacé par db.storage.name


1.0

nuxeo_storage

db.sql.user

Utilisateur de la base de données sql-storage (si rep.type=sql)

A partir de la 1.1.2 ce paramètre est remplacé par db.storage.user


1.0

 

db.sql.password

Mot de passe correspondant à l'utilisateur de la base de données sql-storage (si rep.type=sql)

A partir de la 1.1.2 ce paramètre est remplacé par db.storage.password


1.0

 

JBOSS

 

 

 

jdk.home

Chemin d'accès au JDK

1.0

/opt/jdk1.5.0

jboss.user

Nom de l'utilisateur qui lancera le serveur d'application jboss

1.0

jboss

tomcat.port.http

port HTTP utilisé par le tomcat embarqué par jboss pour répondre aux requêtes HTTP

1.0

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)

1.0

9554

Authentification et annuaire

 

 

 

auth.plugin

Type d'authentification (cas ou ldap, cas par défaut).
Note : Le LDAP, même s'il n'est pas utilisé pour l'authentification reste utile comme annuaire d'utilisateurs et de groupes.

1.1

ldap

cas.url

URL d'accès au serveur CAS de l'établissement

1.0

https://sso.univ.fr

ldap.url

URL d'accès au serveur LDAP de référence

1.0

ldap://ldap.univ.fr:389

ldap.bind

L'annuaire LDAP a-t-il besoin d'un utilisateur particulier pour être consulté en lecture (false par defaut)

1.1

 

ldap.bindDn

DN de l'utilisateur à utiliser pour se connecter au LDAP si ldap.bind=true

1.1

cn=admin,dc=univ,dc=fr

ldap.bindPassword

Mot de passe de l'utilisateur à utiliser pour se connecter au LDAP si ldap.bind=true

1.1

 

ldap.user.searchBaseDn

Base DN utilisé lors des recherches d'utilisateurs dans le LDAP

1.0

ou=people,dc=univ,dc=fr

ldap.user.firstName

Attribut LDAP contenant le nom des l'utilisateurs

1.0

givenName

ldap.user.lastName

Attribut LDAP contenant le nom complert à afficher pour les l'utilisateurs

1.0

sn

ldap.user.company

Attribut LDAP contenant l'organisme de rattachement des utilisateurs

1.0

supannOrganisme

ldap.user.email

Attribut LDAP contenant l'adresse électronique des utilisateurs

1.0

mail

ldap.user.defaultAdministratorId

UID de l'administrateur de la plateforme

1.0


ldap.group.defaultGroup

Groupe correspondant à tous les utilisateurs dans l'annuaire LDAP. Ce groupe peut ou non contenir des utilisateurs. Si aucun groupe n'existe, la valeur "members" est requise.

1.0

members

ldap.group.searchBaseDn

Base DN utilisé lors des recherches de groupes dans le LDAP

1.0

ou=groups,dc=univ,dc=fr

Thème graphique

 

 

 

ecm.instance.name

Titre de la fenêtre du navigateur web

1.0

ESUP-ECM

default.logo.path

Logo par défaut

1.0

logo-ESUPECM.png

local.logo.path

Nom complet du logo de l'établissement

1.0

 

local.banner.background.path

Nom complet de l'image de fond de la bannière supérieure

1.0

 

local.cell.background.color

Couleur de fond des boutons de menu

1.0

 

OpenOffice

 

 

 

openoffice.home

Répertoire d'installtion du serveur Open Office

1.0

/opt/openoffice

openoffice.port

Port d'écoute du serveur Open Office

1.0

8100

Mails

 

 

 

mail.pop3.host

Adresse du serveur pop utilisé pour la réception des mails

1.0

pop.univ.fr

mail.smtp.host

Adresse du serveur smtp utilisé pour l'envoi des notifications par mail

1.0

smtp.univ.fr

mail.smtp.port

Port du serveur smtp

1.0

25

mail.from

Adresse utilisée dans le champ 'from' lors de l'envoi des mails

1.0

admin@univ.fr

Fonctionnalités  (default.properties)

Le fichier default.properties définit le fonctionnement standard de ESUP-ECM. Il est possible d'ajouter et d'enlever des fontionnalités en modifiant la valeur de ces paramètres .

ATTENTION

Ne pas modifier default.properties, ajouter les nouvelles valeurs des paramètres dans votre build.properties

Paramètre

Description

Valeur par défaut

version

use.website.type

Permet de créer des documents de type "site web" dans les espaces de travail.

false

1.0

use.blog.type

Permet de créer des documents de type "blog" dans les espaces de travail.
Note : nécessite que use.website.type soit à true

false

1.1

use.image.type

Permet de créer des documents de type "image ou livre d'images" dans les espaces de travail.

false

1.0

use.forum.type

Permet de créer des documents de type "forum de discussion" dans les espaces de travail.

false

1.0

use.mail.type

Permet de créer des documents de type "dossier courriel" dans les espaces de travail.

false

1.0

use.virtual.navigation

Permet de parcourir l'ensemble des documents par couverture (zone géographique) et par sujet (mot-clé).
Par défaut, seule la navigation  dans les espaces de travail et de publication  est visible.

false

1.0

use.users.manager

Affiche un lien "Gestion des utilisateurs" à l'administrateur.
Permet à l'administrateur de visualiser, de créer et de modifier les utilisateurs et les groupes.

true

1.0

use.vocabularies.manager

Affiche un lien "Gestion des vocabulaires" à l'administrateur.
Permet de gérer les vocabulaires utilisés par Nuxéo; es vocabulaires ne sont pas utilisés pour l'instant par ESUP-ECM.

false

1.0

use.themes.manager

Affiche un lien "Gestion des thèmes" à l'administrateur.
Permet à l'administrateur du site de créer le thème de l'établissement.

false

1.0

show.personnal.workspace

Affiche un lien "Espace personnel".
Permet aux utilisateurs d'accéder à leur espace de travail personnel.

A partir de la 1.1 use.personnal.workspace remplace show.personnal.workspace

true

1.0

use.personnal.workspace

Active la fonctionnalité d'"Espace personnel"

true

1.1

show.user.dashboard

Affiche un lien "Tableau de bord" à l'utilisateur.

true

1.0

show.repository

Affiche un lien "Retour à la base documentaire" quand l'utilisateur est dans son espace de travail personnel.
Permet aux utilisateurs de revenir aux espaces de travail.

true

1.0

show.tab.theme

Afficher un onglet "Habillage" dans l'onglet "Administration" de l'espace de travail

false

1.1

show.tab.preview

Afficher un onglet "Prévisualisation" sur le document courant

false

1.1

show.tab.files.edit

Afficher un onglet "Fichiers" sur le document courant

false

1.1

show.tab.relations

Afficher un onglet "Relations" sur le document courant

false

1.1

show.tab.workflow

Afficher un onglet "Workflow" sur le document courant

false

1.1

show.tab.my.subscriptions

Afficher un onglet "Mes notifications" sur l'espace de travail courant

false

1.1

show.tab.manage.subscriptions

Afficher un onglet "Gérer les notifications"  dans l'onglet "Administration" de l'espace de travail

false

1.1

show.comments

Afficher un onglet "Commentaire" sur le document courant

false

1.1

startup.page

Permet de définir la page d'acceuil présentée à l'utilisateur
user_dashboard   : le tableau de bord
view_workspaces: la base documentaire (espaces de travail et de publication)

user_dashboard

1.0

Lancement /arrêt du serveur JBOSS

Le serveur se lance grâce au script  run.sh et s'arrête avec shutdown.sh, tous deux présents dans le répertoire d'installation (nuxeo.dir.parent/ du build.properties).

Ces scripts sont appelés par la commande jbossctl

Démarrage :

sh <nuxeo.dir.parent>/nuxeo-dm-5.2.0/bin/jbossctl start &

Arrêt :

sh <nuxeo.dir.parent>/nuxeo-dm-5.2.0/bin/jbossctl stop &

Interfaces réseau

La valeur par défaut 0.0.0.0 du paramètre jboss.bind.address décrit plus haut, permet d'écouter sur toutes les interfaces.

Pour restreindre l'écoute à une interface précise, il faut préciser l'IP à utiliser. Si Nuxeo est derrière un frontal Apache, il faut s'assurer que l'IP indiquée corresponde à celle du VirtualHost.

En l'absence de valeur pour ce paramètre, le serveur n'écoutera que sur le loop back (127.0.0.1).

Logs du serveur

Les logs du serveur sont par défaut générés dans <nuxeo.dir.parent>/nuxeo-dm-5.2.0/server/default/log/server.log
Cet emplacement est modifiable par le paramètre jboss.server.log décrit plus haut.

On peut modifier la façon dont vont être générés les logs par le fichier <nuxeo.dir.parent>/nuxeo-dm-5.2.0/server/default/conf/jboss-log4j.xml

Installation du serveur Open Office 2.4

Vous pouvez installer le serveur Open Office en vous reportant à cette page.

  • Aucune étiquette