<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Le Web Social de Pierre-Julien Grizel &#187; Tomcat</title>
	<atom:link href="http://pjgrizel.net/tag/tomcat/feed/" rel="self" type="application/rss+xml" />
	<link>http://pjgrizel.net</link>
	<description>Le blog de Pierre-Julien Grizel : Gestion de Contenu, Réseaux Sociaux et Responsabilité Sociale d&#039;Entreprise.</description>
	<lastBuildDate>Mon, 22 Nov 2010 09:01:38 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Installer Alfresco avec Debian / Tomcat / Postgres</title>
		<link>http://pjgrizel.net/2009/05/installer-alfresco-avec-debian-tomcat-postgres/</link>
		<comments>http://pjgrizel.net/2009/05/installer-alfresco-avec-debian-tomcat-postgres/#comments</comments>
		<pubDate>Fri, 15 May 2009 15:55:42 +0000</pubDate>
		<dc:creator>Pierre-Julien Grizel</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[Alfresco]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Tomcat]]></category>

		<guid isPermaLink="false">http://blog.liances.com/?p=30</guid>
		<description><![CDATA[Ce tutoriel détaille le processus d&#8217;installation d&#8217;Alfresco Labs 3 sur une machine Debian Etch en se basant sur la version packagée de Tomcat. Prérequis Avant d&#8217;installer Alfresco, il faut préparer les éléments suivants : Disposer d&#8217;une Debian Etch (ça va mieux en le disant :)), connectée à Internet. Nous partons du principe que la machine [...]]]></description>
			<content:encoded><![CDATA[<p>Ce tutoriel détaille le processus d&#8217;installation d&#8217;Alfresco Labs 3 sur une machine Debian Etch en se basant sur la version packagée de Tomcat.</p>
<h1><strong>Prérequis</strong></h1>
<p>Avant d&#8217;installer Alfresco, il faut préparer les éléments suivants :</p>
<ul>
<li>Disposer d&#8217;une Debian Etch (ça va mieux en le disant :)), connectée à Internet. Nous partons du principe que la machine est vierge et que vous n&#8217;avez rien installé dessus.</li>
<li><a href="http://process.alfresco.com/ccdl/?file=release/labs/build-1526/alfresco-labs-tomcat-3Stable.tar.gz&amp;a=y&amp;s=n&amp;t=y">Télécharger la version d&#8217;Alfresco Labs</a> disponible sur le <a href="http://wiki.alfresco.com/wiki/Labs_3_Final_download_files">Wiki d&#8217;Alfresco</a> et placez-la dans votre répertoire personnel (<em>~/</em>)</li>
<li>Prendre un papier et un stylo pour noter les paramètres qui seront utiles au moment de l&#8217;installation.</li>
</ul>
<p>Voici les paramètres que nous allons utiliser le long de ce guide :</p>
<ul>
<li>DB_HOST : La machine sur laquelle se trouve votre base de données PostgreSQL</li>
<li>DB_USER : L&#8217;utilisateur qui se connecte à la base Postgres (&laquo;&nbsp;<em>alfresco</em>&nbsp;&raquo; par défaut)</li>
<li>DB_NAME : Le nom de la base de données qui hébergera les données d&#8217;Alfresco (&laquo;&nbsp;<em>alfresco</em>&nbsp;&raquo; semble être un choix raisonnable)</li>
<li>DB_PASSWORD : Son mot de passe (&laquo;&nbsp;<em>toto</em>&nbsp;&raquo; dans notre cas)</li>
<li>DATA_PATH : Le chemin dans lequel vous allez stocker les données d&#8217;Alfresco. Nous utiliserons <em>/var/lib/alfresco</em>.</li>
<li>TOMCAT_HOST : La machine sur laquelle nous allons installer Alfresco / Tomcat</li>
<li>TOMCAT_PORT : Le port sur lequel Tomcat va tourner (8080 par défaut sous Debian)</li>
</ul>
<p><strong>Remarque : </strong>Pour des raisons de convenance personnelle, j&#8217;utilise sudo plutôt que de me connecter avec le compte root de la machine. Je vous invite à faire de même, mais c&#8217;est un point de détail. Je considère dans ce guide que toutes les manipulations, sauf avis contraires, sont effectuées avec le compte root.</p>
<h2>Mise à jour des paquets</h2>
<p>Les paquets dont nous avons besoin pour l&#8217;installation ne sont pas tous disponibles lors d&#8217;une installation par défaut de Debian Etch. Éditez donc le fichier <em>/etc/apt/sources.list </em>pour ajouter la possibilité de télécharger des packets pas Open-Source :</p>
<pre>deb http://ftp.fr.debian.org/debian/ etch main <strong>non-free</strong>
deb http://security.debian.org/ etch/updates main contrib <strong>non-free</strong></pre>
<p>Puis mettez à jour la liste des paquets :</p>
<pre>apt-get update</pre>
<h2>Base de données</h2>
<p>Alfresco peut fonctionner avec un grand nombre de bases de données. La documentation officielle insiste sur MySQL, nous allons donc, par esprit de contradiction, nous intéresser à Postgres. Nous installerons la version 7.4, mais, à ma connaissance, le processus est strictement le même pour l&#8217;installation de la 8.1, qui marche tout aussi bien avec Alfresco.</p>
<p>Si vous disposez déjà d&#8217;une instance de Postgres sur la même machine ou sur une autre, connectez-vous sur cette machine et ignorez la ligne suivante.</p>
<pre><strong>apt-get install postgresql-7.4</strong></pre>
<p>Il faut maintenant créer un utilisateur et une base de données pour héberger les données d&#8217;Alfresco. <strong>Rappel : </strong>Si vous utilisez une autre installation de Postgres, ces manipulations doivent être effectuées depuis l&#8217;autre machine.</p>
<pre><strong>su - postgres</strong>
<div>
<div>postgres:~$ <strong>createuser alfresco</strong>
Le nouvel utilisateur a-t'il le droit de créer des bases de données ? (o/n) <strong>n</strong>
Le nouvel utilisateur a-t'il le droit de créer des utilisateurs ? (o/n) <strong>n</strong>
CREATE USER
postgres:~$ <strong>createdb -O alfresco -E UNICODE alfresco</strong>
CREATE DATABASE</div>
<div>postgres:~$ <strong>psql -d alfresco -c "ALTER USER alfresco WITH PASSWORD 'toto'"</strong></div>
</div>

ALTER USER</pre>
<p>N&#8217;oubliez pas évidemment de remplacer &laquo;&nbsp;toto&nbsp;&raquo; ci-dessus par le mot de passe que vous souhaitez réellement utiliser.</p>
<p>Il faut maintenant préciser que la base Postgres pourra être accédée au travers du réseau. Dans <em>/etc/postgres/7.4/main/postgresql.conf</em>, positionnez la ligne suivante :</p>
<pre>tcpip_socket =<strong> true</strong></pre>
<h1>Installation de Tomcat</h1>
<p>Nous pouvons maintenant installer le JDK de Java et Tomcat.</p>
<pre><strong>apt-get install sun-java6-jdk
</strong><strong>apt-get install tomcat5.5
/etc/init.d/tomcat5.5 stop # Pour gagner du temps à l'installation </strong></pre>
<p>Décompressez le .tar.gz d&#8217;Alfresco Labs dans un répertoire temporaire et installez Alfresco et Alfresco Share.</p>
<pre><strong>cd /tmp
</strong><strong>tar -xzvf ~/alfresco-labs-war-3Stable.tar.gz
cp /tmp/alfresco.war /var/lib/tomcat5.5/webapps
cp /tmp/share.war /var/lib/tomcat5.5/webapps
/etc/init.d/tomcat5.5 start</strong></pre>
<p>À partir de ce moment, Alfresco est installé. Le plus dur reste à faire : configurer Alfresco, Alfresco Share et tous les éléments sans lesquels vous ne parviendrez pas à le faire fonctionner.</p>
<p>Pour vérifier que tout s&#8217;est bien passé, regardez si les répertoires &laquo;&nbsp;<em>alfresco</em>&nbsp;&raquo; et &laquo;&nbsp;<em>share</em>&nbsp;&raquo; ont été créés dans <em>/var/lib/tomcat5.5/webapps</em> au moment du démarrage de Tomcat.</p>
<h1>Configuration d&#8217;Alfresco</h1>
<h2>Configuration de la base de données</h2>
<p>Avant de nous attaquer à la configuration de la base de données, il faut déjà installer le driver Postgres pour Java. C&#8217;est relativement simple.</p>
<pre><strong>apt-get install libpg-java
</strong></pre>
<h2>Fichiers de configuration d&#8217;Alfresco</h2>
<p>Les fichiers de configuration d&#8217;Alfresco ne sont pas déployés lors du démarrage de Tomcat. Il faut donc le faire à la main.</p>
<pre><strong>mkdir /var/lib/tomcat5.5/shared/classes/alfresco
cp -r /tmp/extensions/* /var/lib/tomcat5.5/shared/classes/alfresco
chown -R tomcat55:nogroup /var/lib/tomcat5.5/shared/classes/alfresco</strong></pre>
<p>Il va maintenant falloir éditer les fichiers de configuration pour faire fonctionner correctement Alfresco. Éditez le fichier <em>/</em><em>var/lib/tomcat5.5/shared/classes/alfresco/extension/custom-repository.properties</em> et éditez / modifiez le lignes suivantes (attention, lisez attentivement le fichier pour ne pas doubler les lignes) :</p>
<pre>dir.root=<strong>/var/lib/alfresco</strong>
db.username=<strong>alfresco</strong>
db.password=<strong>toto
<span style="font-weight: normal; ">db.driver=org.postgresql.Driver
db.url=jdbc:postgresql://</span>localhost:5432/alfresco</strong></pre>
<p>Replacez &laquo;&nbsp;localhost&nbsp;&raquo; par DB_HOST et &laquo;&nbsp;alfresco&nbsp;&raquo; par DB_NAME s&#8217;il y a lieu. Vérifiez que le numéro du port de Postgres est correct (c&#8217;est bien 5432 par défaut).</p>
<p>Certaines des lignes ci-dessus étaient commentées (précédées par &laquo;&nbsp;#&nbsp;&raquo;) : dé-commentez-les. <strong>Commentez la partie &laquo;&nbsp;Derby connexion&nbsp;&raquo;. Seules les lignes mentionnées ci-dessus doivent être non commentées !</strong></p>
<p>Dans le même répertoire, éditez <em>custom-hibernate-dialect.properties</em>. Commentez tout le fichier sauf les deux lignes suivantes (elles se trouvent normalement à la toute fin du fichier) :</p>
<pre>hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect
hibernate.query.substitutions=true TRUE, false FALSE</pre>
<p>Il faut penser à modifier le fichier /var/lib/tomcat5.5/webapps/alfresco/WEB-INF/classes/log4j.properties pour assurer un log correct des opérations d&#8217;Alfresco :</p>
<pre>log4j.appender.File.File=<strong>/var/log/alfresco/alfresco.log</strong>

<strong></strong>

Et bien sûr créez le répertoire adequat :

<strong>mkdir /var/log/alfresco
chown tomcat55:nogroup /var/log/alfresco</strong></pre>
<h2>Création du répertoire de données</h2>
<p>Créez le répertoire <em>DATA_PATH</em> :</p>
<pre><strong>mkdir /var/lib/alfresco
chown tomcat55:nogroup /var/lib/alfresco </strong></pre>
<h2>Configuration des options de démarrage de Tomcat</h2>
<p>Les options de démarrage de Tomcat ne permettent pas de faire fonctionner correctement Alfresco. Il faut donc modifier /etc/init.d/tomcat5.5 et modifier les lignes suivantes pour débrayer le Security Manager de Tomcat et pour augmenter la mémoire mise à disposition du Alfresco :</p>
<pre>TOMCAT5_SECURITY=no
# ...
        CATALINA_OPTS="-Djava.awt.headless=true <strong>-Xmx1024M -XX:MaxPermSize=256m</strong>"
# ... </pre>
<p>Les valeurs de gestion de la mémoire doivent être en tous les cas inférieures à la mémoire physique disponible sur votre machine (sinon tomcat va swapper sans arrêt et Alfresco sera inutilisable). L&#8217;option &laquo;&nbsp;MaxPermSize&nbsp;&raquo; permet d&#8217;éviter certaines erreurs de mémoire que j&#8217;ai pu rencontrer en faisant cohabiter Alfresco et Jira.</p>
<h2>Installation des programmes additionnels</h2>
<p>En théorie, Alfresco devrait fonctionner comme cela. Mais pour en profiter pleinement, il faut installer les programmes et librairies sur lesquels il se base notamment pour effectuer des conversions de documents.</p>
<pre>apt-get install imagemagick
apt-get install xfvb xfonts-base</pre>
<p><em><strong>(TODO : ÉCRIRE LA PROCÉDURE POUR pdf2swf ET POUR Open-Office)</strong></em></p>
<p>Il faut indiquer à Alfresco où se trouvent ces programmes. Éditez<em> /var/lib/tomcat5.5/webapps/alfresco/WEB-INF/classes/alfresco/repository.properties </em>:</p>
<p><strong>dir.root=/var/lib/alfresco<br />
img.root=/usr<br />
img.dyn=${img.root}/lib<br />
img.exe=${img.root}/bin/convert<br />
swf.exe=./bin/pdf2swf</strong></p>
<p>On en profite pour modifier une autre option dans ce fichier qui permet de reconstruire automatiquement l&#8217;index en cas d&#8217;erreur :</p>
<pre>index.recovery.mode=<strong>AUTO</strong></pre>
<h2>Test de l&#8217;interface</h2>
<p><strong>Vous pouvez maintenant vous connecter avec votre navigateur : http://localhost:TOMCAT_PORT/alfresco</strong></p>
<p><strong>L&#8217;accès par défaut est admin/admin </strong>; Changez-le immédiatement !</p>
<h2>CIFS</h2>
<p>Pour configurer les protocoles additionnels tels que CIFS/SMB (qui permettent un accès au repository Alfresco comme s&#8217;il s&#8217;agissait d&#8217;un filesystem) ou FTP, éditez le fichier suivant :</p>
<p>Comme Tomcat s&#8217;exécute avec un utilisateur non privilégié, vous ne pouvez pas utiliser le port standard (445) pour faire tourner votre serveur CIFS. Il faut, à la place, décommenter les lignes suivantes dans <em>/var/lib/tomcat5.5/webapps/alfresco/WEB-INF/classes/alfresco/file-servers.xml </em>:</p>
<pre><span style="font-family: Verdana; line-height: normal; white-space: normal; "><strong>&lt;</strong></span><strong>tcpipSMB port="1445" platforms="linux,solaris,macosx"/&gt; 
&lt;netBIOSSMB sessionPort="1139" namePort="1137" datagramPort="1138" platforms="linux,solaris,macosx"/&gt;</strong></pre>
<p>Pour accéder au serveur, utilisez depuis Windows : <em>\\server:1445\Alfresco</em>. Il ne reste plus qu&#8217;à &laquo;&nbsp;mapper&nbsp;&raquo; le port 445 vers le port 1445 (avec iptables par exemple) pour se débarrasser du &laquo;&nbsp;:1445&#8243; dans la chaîne de connexion &#8211; mais c&#8217;est une autre histoire.</p>
<h2>Configuration Alfresco Share</h2>
<p>Pour configurer Alfresco Share, il faut simplement indiquer à Share un moyen de communiquer avec Alfresco : il faut renseigner le nom d&#8217;hôte (localhost dans notre cas) et surtout le numéro du port sur lequel se font les échanges avec Alfresco. Éditez le fichier <em>/var/lib/tomcat5.5/webapps/share/WEB-INF/classes/alfresco$ sudo vi webscript-framework-config.xml</em> et remplacez toutes les instances de 8080 par le numéro du port sur lequel Tomcat tourne (en général : 8080 ou 8180, c&#8217;est le premier par défaut sous Debian, de mémoire).</p>
<p>Vous vous connectez ensuite à Alfresco Share par l&#8217;URL suivante :</p>
<p>http://localhost:ALFRESCO_PORT/share</p>
<h1>Et maintenant ?</h1>
<p>Et voilà, Alfresco est installé !</p>
<p>Ce guide est légèrement incomplet (manque la partie OpenOffice et PDF2SWF) et il me reste quelques problèmes techniques à résoudre (problème du port de CIFS), mais cela devrait vous mettre le pied à l&#8217;étrier.</p>
<p>N&#8217;hésitez pas à me dire si vous remarquez des erreurs dans ce guide ou souhaitez préciser certains points.</p>
<p>Bonne installation !</p>
<h1>Référence</h1>
<p>Voici une liste de liens utiles, pour référence ou pour aller plus loin :</p>
<ul>
<li>La <a href="http://wiki.alfresco.com/wiki/Installing_Labs_3_Stable_on_Debian_Etch">documentation officielle</a> de l&#8217;installation d&#8217;Alfresco sous Debian Etch</li>
<li><a href="http://wiki.alfresco.com/wiki/Download_Alfresco_Community_Network">Téléchargement d&#8217;Alfresco</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://pjgrizel.net/2009/05/installer-alfresco-avec-debian-tomcat-postgres/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

