Introducción – ¿Qué es alfresco?
En este tutorial vamos a ver cómo instalar alfresco en tomcat 7 utilizando como base un servidor Debian Wheezy.
Alfresco es una sistema de administración de contenidos de código fuente libre, desarrollado en Java, basado en estándares abiertos y de escala empresarial para sistemas operativos tipo Windows, Unix Solaris y algunas versiones de Linux.
Ahora vamos a ver como realizar la instalación.
Procedimiento
Para realizar la instalación, vamos a implementarlo en una máquina debian wheezy con 3GB de ram , utilizando el paquete de java «openjdk-7-jre« y como base de datos «mysql«. Realizamos los siguientes pasos:
Instalamos el paquete java:
aptitude install openjdk-7-jre
Descargamos tomcat y lo descomprimimos:
wget http://apache.rediris.es/taptitude install openjdk-7-jreomcat/tomcat-7/v7.0.56/bin/apache-tomcat-7.0.56.tar.gz
tar xvzf apache-tomcat-7.0.56.tar.gz
Movemos los archivos extraidos al directorio «/opt/tomcat«:
sudo mv apache-tomcat-7.0.56 /opt/tomcat
Procedemos a modificar el fichero «/opt/tomcat/conf/tomcat-users.xml» y añadimos la siguiente configuración con la que podremos acceder a la administración de tomcat:
<tomcat-users> <role rolename="manager-gui"/> <role rolename="admin-gui"/> <user username="admin" password="admin" roles="admin-gui,manager-gui,manager-script,admin-script"/> </tomcat-users>
Ahora modificamos el fichero «/opt/tomcat/conf/server.xml» y añadimos la información del conector:
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8" />
Modificamos el fichero de inicio del servicio tomcat «/etc/init.d/tomcat» y lo configuramos de la siguiente manera:
# Tomcat auto-start # # description: Auto-starts tomcat # processname: tomcat # pidfile: /var/run/tomcat.pid export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 case $1 in start) sh /opt/tomcat/bin/startup.sh ;; stop) sh /opt/tomcat/bin/shutdown.sh ;; restart) sh /opt/tomcat/bin/shutdown.sh sh /opt/tomcat/bin/startup.sh ;; esac exit 0
Cambiamos los permisos del fichero configurado:
sudo chmod 755 /etc/init.d/tomcat
Añadimos el servicio al autoinicio:
sudo update-rc.d tomcat defaults
Reiniciamos la máquina y procedemos a modificar la configuración de memoria que usará tomcat. Para ello modificamos el fichero «/opt/tomcat/bin/catalina.sh» y añadimos las siguientes lineas con las que tendremos como memoria máxima 2GB:
JAVA_OPTS="-XX:MaxPermSize=160m -XX:NewSize=256m -Xms512m " JAVA_OPTS="$JAVA_OPTS -Xmx2048m -Xss512K "
Instalar mysql server.
Reiniciamos el servicio tomcat e instalamos mysql-server:
sudo apt-get install mysql-server
Accedemos a mysql para crear el usuario y la base de datos que utilizaremos:
mysql -u root -p -h localhost
CREATE USER 'alfresco'@'localhost' IDENTIFIED BY 'alfresco'; CREATE USER 'alfresco'@'%' IDENTIFIED BY 'alfresco'; grant all on alfresco.* to 'alfresco'@'%' identified by 'alfresco' with grant option; create database alfresco default character set utf8 collate utf8_bin;
Reiniciamos el servicio mysql.
Instalar alfresco.
Creamos el directorio «alfresco» y el directorio raíz:
sudo mkdir /alfresco
En el directorio home del usuario vagrant creamos el directorio «alfresco» y accedemos a el:
mkdir alfresco cd alfresco
Dentro de él descargamos alfresco y lo descomprimimos:
wget http://dl.alfresco.com/release/community/build-04576/alfresco-community-4.2.c.zip
unzip alfresco-community-4.2.c.zip
Accedemos a la url http://192.168.10.80:8080/manager y desplegamos un nuevo archivo WAR.
Trayectoria: /alfresco WAR: /home/vagrant/alfresco/web-server/webapps/alfresco.war
Desplegamos la aplicación y nos sale el siguiente error; «FALLO – Apliación desplegada en la ruta de contexto /alfresco, pero el contexto no pudo arrancar«
Continuamos la instalación sin preocuparnos y hacemos lo mismo para el WAR de share:
Trayectoria: /share WAR: /home/vagrant/alfresco/web-server/webapps/share.war
Desplegamos la aplicación y procedemos a instalar el conector mysql. Para ello descargamos el conector en el directorio home del usuario vagrant y lo descomprimimos:
wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.34.tar.gz
tar xvzf mysql-connector-java-5.1.34.tar.gz
Copiamos el conector al directorio «/opt/tomcat/lib«
cp ~/mysql-connector-java-5.1.34/mysql-connector-java-5.1.34-bin.jar /opt/tomcat/lib/
Copiamos el directorio shared de alfresco en «/opt/tomcat/«
sudo cp -r ~/alfresco/web-server/shared /opt/tomcat/
Alfresco requiere paquetes adicionales para funcionar, por lo que debemos instalar los siguientes paquetes y añadir los repositorios especificados:
sudo apt-get install python-software-properties sudo apt-add-repository ppa:guilhem-fr/swftools sudo add-apt-repository ppa:upubuntu-com/office sudo apt-get update sudo apt-get install imagemagick swftools libjodconverter-java ffmpeg ttf-mscorefonts-installer
Una vez que termine la instalación de los paquetes renombramos los archivos de ejemplo a los archivos .xml:
sudo cp /opt/tomcat/shared/classes/alfresco/extension/video-thumbnail-context.xml.sample /opt/tomcat/shared/classes/alfresco/extension/video-thumbnail-context.xml
sudo cp /opt/tomcat/shared/classes/alfresco/extension/video-transformation-context.xml.sample /opt/tomcat/shared/classes/alfresco/extension/video-transformation-context.xml
Modificamos el fichero «/opt/tomcat/conf/catalina.properties´». Buscamos la linea que comienza por «shared.loader» y la comentamos, justo debajo pegamos la siguiente linea:
shared.loader=${catalina.base}/shared/classes,${catalina.base}/shared/lib/*.jar
De nuevo renombramos las propiedades de alfresco con el fichero de ejemplo como hicimos anteriormente:
sudo cp /opt/tomcat/shared/classes/alfresco-global.properties.sample /opt/tomcat/shared/classes/alfresco-global.properties
Ahora modificamos el fichero y lo dejamos así:
############################### ## Common Alfresco Properties # ############################### # # Sample custom content and index data location # dir.root=/alfresco/alf_data #dir.keystore=${dir.root}/keystore # # Sample database connection properties # db.username=alfresco db.password=alfresco #Disabled the guest login alfresco.authentication.allowGuestLogin=false # # External locations #------------- ooo.exe=/usr/bin/libreoffice ooo.enabled=true ooo.port=8100 jodconverter.officeHome=/usr/lib/libreoffice/program/soffice jodconverter.portNumbers=8100 jodconverter.enabled=true img.root=/usr img.dyn=${img.root}/lib img.exe=${img.root}/bin/convert swf.exe=/usr/bin/pdf2swf ffmpeg.exe=/usr/bin/ffmpeg # # Property to control whether schema updates are performed automatically. # Updates must be enabled during upgrades as, apart from the static upgrade scripts, # there are also auto-generated update scripts that will need to be executed. After # upgrading to a new version, this can be disabled. # #db.schema.update=true # # MySQL connection # db.driver=org.gjt.mm.mysql.Driver db.name=alfresco db.url=jdbc:mysql://localhost/alfresco?useUnicode=yes&characterEncoding=UTF-8 # # Oracle connection # #db.driver=oracle.jdbc.OracleDriver #db.url=jdbc:oracle:thin:@localhost:1521:alfresco # # SQLServer connection # Requires jTDS driver version 1.2.5 and SNAPSHOT isolation mode # Enable TCP protocol on fixed port 1433 # Prepare the database with: # ALTER DATABASE alfresco SET ALLOW_SNAPSHOT_ISOLATION ON; # #db.driver=net.sourceforge.jtds.jdbc.Driver #db.url=jdbc:jtds:sqlserver://localhost:1433/alfresco #db.txn.isolation=4096 # # PostgreSQL connection (requires postgresql-8.2-504.jdbc3.jar or equivalent) # #db.driver=org.postgresql.Driver #db.url=jdbc:postgresql://localhost:5432/alfresco # # DB2 connection # #db.driver=com.ibm.db2.jcc.DB2Driver #db.url=jdbc:db2://localhost:50000/alfresco:retrieveMessagesFromServerOnGetMessage=true; # # Index Recovery Mode #------------- #index.recovery.mode=AUTO # # Outbound Email Configuration #------------- #mail.host= #mail.port=25 #mail.username=anonymous #mail.password= #mail.encoding=UTF-8 #mail.from.default=alfresco@alfresco.org #mail.smtp.auth=false # # Alfresco Email Service and Email Server #------------- # Enable/Disable the inbound email service. The service could be used by processes other than # the Email Server (e.g. direct RMI access) so this flag is independent of the Email Service. #------------- #email.inbound.enabled=true # Email Server properties #------------- #email.server.enabled=true #email.server.port=25 #email.server.domain=alfresco.com #email.inbound.unknownUser=anonymous # A comma separated list of email REGEX patterns of allowed senders. # If there are any values in the list then all sender email addresses # must match. For example: # .*\@alfresco\.com, .*\@alfresco\.org # Allow anyone: #------------- #email.server.allowed.senders=.* # # The default authentication chain # To configure external authentication subsystems see: # http://wiki.alfresco.com/wiki/Alfresco_Authentication_Subsystems #------------- #authentication.chain=alfrescoNtlm1:alfrescoNtlm # # URL Generation Parameters (The ${localname} token is replaced by the local server name) #------------- #alfresco.context=alfresco #alfresco.host=${localname} #alfresco.port=8080 #alfresco.protocol=http # #share.context=share #share.host=${localname} #share.port=8080 #share.protocol=http #imap.server.enabled=true #imap.server.port=143 #imap.server.host=localhost # Default value of alfresco.rmi.services.host is 0.0.0.0 which means 'listen on all adapters'. # This allows connections to JMX both remotely and locally. #alfresco alfresco.rmi.services.host=0.0.0.0 # # RMI service ports for the individual services. # These seven services are available remotely. # # Assign individual ports for each service for best performance # or run several services on the same port. You can even run everything on 50500 if needed. # # Select 0 to use a random unused port. # #avm.rmi.service.port=50501 #avmsync.rmi.service.port=50502 #attribute.rmi.service.port=50503 #authentication.rmi.service.port=50504 #repo.rmi.service.port=50505 #action.rmi.service.port=50506 #wcm-deployment-receiver.rmi.service.port=50507 #monitor.rmi.service.port=50508
Reiniciamos la máquina y ya tenemos instalado alfresco.
Accedemos a http://192.168.10.80:8080/alfresco/ y todo funciona correctamente.
¡No olvides hacer click sobre el botón «Me gusta» y comparte si te ha servido de ayuda este tutorial sobre cómo instalar alfresco en tomcat 7.
¡Suscríbete para recibir notificaciones de nuevos tutoriales!
Referencias:
https://es.wikipedia.org/wiki/Alfresco