Manual de Instalación DSpace ROAF ROAF Facultad de Ciencias, Ciencias Computacionales, Universidad Autónoma de Baja California DSpace System Documentation: Installation 2 Manual de Instalación DSpace Proyecto ROAF Administradora: Cristal Azalia Dena Flores Priscila Acosta Medina Iris Esther Arellano Balbuena José Feliciano Díaz Beltrán José Antonio Sánchez Guerra Gustavo Méndez Espíritu Octavio Avendaño Romero 2009 Administración de Proyectos – Ciencias Computacionales Facultad de Ciencias – Universidad Autónoma de Baja California Campus Ensenada Baja California MEXICO AP ROAF UABC 3 Manual de Instalación DSpace 1 Introducción DSpace es uno de los programas de código abierto preferidos por las instituciones académicas para gestionar repositorios de archivos (textuales, audio, vídeo, etc.), facilitando su depósito, organizándolos en comunidades, asignándoles metadatos y permitiendo su difusión en recolectores o agregadores. El objetivo de este manual es explicar la instalación, en cualquier servidor, de la herramienta DSpace. Sin ser el objetivo de este manual, en la primera parte se dan una serie de nociones en la instalación y configuración de todas las aplicaciones necesarias para el correcto funcionamiento de DSpace. En la segunda parte, se explicarán los pasos necesarios para instalar un servidor con DSpace. Debemos comentar que la herramienta es multiplataforma, es decir, puede ser instalado y Configurado en un servidor Linux o en uno Windows (Wn32). A continuación comentamos los programas necesarios para que funcione DSpace, en Linux. 2 Prerrequisitos de Software La lista de abajo describe los componentes y herramientas que necesitaras para correr el servidor de DSpace. 2.1 Linux como SO LINUX como SO (Ubuntu 8.04): Muchas de las distribuciones de Linux/Unix vienen con algunas de las dependencias de abajo pre instaladas o instalarlas fácilmente vía actualización, puedes consultar la documentación de tu distribución para determinar que esta realmente disponible. Nota:Es recomendable que vayas a las direcciones donde están los software y los descargues. 2.2 Java JDK 5 (el estándar SDK esta bien, no necesitas J2EE) DSpace ahora requirió Java 5 o mayor debido al uso de las nuevas capacidades de lenguaje introducidas en 5 que hacen la codificación más fácil y más limpia. AP ROAF UABC 4 Manual de Instalación DSpace Java 5 o mayor lo puede bajar de la siguiente dirección: http://java.sun.com/javase/downloads/index.jsp 2.3 Apache Maven 2.0.8 o mayor (Java built tool) Maven es necesario en la primera etapa de la construcción del proceso de montar el paquete de instalación de DSpace. Este te da la flexibilidad de modificar DSpace usando el proyecto de Maven existente que se encuentra en el directorio [dspace-source]/ dspace/modules o agregando en tu propio proyecto de Maven para construir el paquete de instalación para DSpace. Maven puede ser descargado de la siguiente dirección: http://maven.apache.org/download.html 2.4 Apache Ant 1.6.2 o mayor (Java built tool) Apache Ant es aun requerido para la segunda etapa de la construcción del proceso. Este es usado una ves que el paquete de instalación ha sido construido en [dspacesource]/dspace/target/dspace-<versión>-build.dir Ant puede ser descargado de la siguiente dirección: http://ant.apache.org [http://ant.apache.org/] 2.5 Base de Datos Relacional: (PostgreSQL) PostgreSQL 8.3.7 o mayor. PostgreSQL puede ser descargado de la siguiente dirección: http://www.postgresql.org/ [http://www.postgresql.org/] Es altamente recomendable trabajar con Postgre 8.x o mayor aunque puede trabajar con anteriores. Una vez instalado. Necesitas habilitar la conexión TCP/IP (usar DSpace JDBC). Para 8.x+, editar postgresql.conf empiece quitando los comentarios (ver el problema 1 de la instalación del PostgreSQL en la guía de problemas y acciones) listen_addresses = ‘localhost’ Después aumente un poco la seguridad editando pg_hba.conf y agregue esta línea (ver el problema 2 de la instalación del PostgreSQL en la guía de problemas y acciones): host dspace AP dspace 127.0.0.1 255.255.255.255 ROAF md5 UABC 5 Manual de Instalación DSpace Después reinicia PostgreSQL 2.6 Motor de Servlet: (Jakarta Tomcat 5.5) Jacarta Tomcat 5.5 o mayor Tomcat puede ser descargado de la siguiente dirección: http://tomcat.apache.org [http://tomcat.apache.org/whichversion.html] Observe que DSpace necesitará funcionar como el mismo usuario que Tomcat, puede ser que quiera instalar y correr Tomcat como un usuario llamado ‘dspace’. Fija apropiadamente la variable de entorno TOMCAT_USER. Modificaciones en [tomcat]/tomcat.conf Necesitas asegurarte que Tomcat tiene a) suficiente memoria para correr DSpace y b) usar UTF-8 como su codificación del archivo por defecto. Entonces asegúrate en tus scripts que la siguiente variable de entorno se fije: JAVA_OPTS=”-Xmx512M -Xms64M -Dfile.encoding=UTF-8” Modificación en [tomcat]/config/server.xml También necesitas alterar la configuración por default de Tomcat para soportar la búsqueda y la lectura de multi bytes UTF-8 correctamente.necesitas agregar a la opción de configuración a el elemento<Connector> en [tomcat]/config/server.xml URIEncoding =”UTF-8” Ejemplo. Si estas usando la configuración que tiene por default el Tomcat, se debería leer: <!-- Define a non-SSL HTTP/1.1 Connector on port 8080 --> <Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8" /> AP ROAF UABC 6 Manual de Instalación DSpace 3 Opciones de Instalación 3.1 Visión general de las opciones de instalación Con la llegada de un nuevo Apache Maven 2 [http://maven.apache.org/] basado en arquitectura de construcción en DSpace 1.5.1 ahora tienes dos opciones en como podrías desear la instalación y manejo de tu instalación local de DSpace. Si has usado DSpace 1.4.x , por favor reconoce que los procedimientos iníciales de construcción ha cambiado para permitir mayor adecuación. Despues encontraras los pasos ‘basados en Ant’ del proceso de instalación familiares. Maven es usado para resolver las dependencias de DSpace online para el servidor ‘Repositorio Central de Maven’. Esto es importante para notar que las estrategias son en términos idénticos de la lista de procedimientos requeridos para completar la construcción del proceso, la única diferencia es que el la versión incluye “more modules” que se construirían dando sus precedencias en el paquete de instalación. AP Deafault Release (dspace-<versión>-release.zip) o Estos métodos permiten adecuar la configuración de DSpace (en dspace.cfg) o interfaces de usuario, usando interfaces preconstruidas básicas. o Se descarga las librerías “precompiladas” para el nucleo del api-dspace, soportando servlets, etiquetas de librería, aspectos y temas para el dpsce-xmlui, dspace-xmlui y otros webservice/aplicaciones. o Las exposiciones de los acercamientos de las partes de la aplicación que los apegados a DSpace prefieren mirarlo adecuado. La estructura del directorio de esta versión es la siguiente: [dspace-source] o Dspace/ - ‘construccion’ y modulo de configuración de DSpace o Pom.xml –la definición del proyecto padre. Fuente de la version (dspace-<version>-src-release.zip) o Este método es recomendado para quienes cuyos deseos de desarrollar DSpace a futuro o alterar sus capacidades a un estado mas avanzado. ROAF UABC 7 Manual de Instalación DSpace o Este contiene “todos” el codigo de dspace para el numero de dspace-api, soportado servlets, librerías etiquetas, aspectos y temas para el dspacexmlui, dspace-xmlui y otros servicios web/aplicaciones. o Provee todas las mismas capacidades como la versión normal. La estructura del directorio de esta version es mas detallada: | [dspace-source] o dspace/ -‘construccion ’ y modulo de configuración de DSpace o dspace-api/ -modulo de la fuente de java API o dspace-jspui/ -modulo fuente JSP-UI o dspace-oai/ -modulo fuente OAI-PMH o dspace-xmlui/ -modulo fuente XML-UI o dspace-lni/ -modulo fuente de Lightweight Network Interface o dspace-sword/ -modulo fuente del deposito de servicio SWORD (Simple Web-service Offering Repository Deposit) o pom.xml -definición del proyecto padre de DSpace. Ambos acercamientos te proveen con el mismo control sobre como DSpace se construye asi mismo (especialmente en términos de agregando adecuaciones completamente/3er parte de los “modulos” de DSpace que desees usar). Ambos métodos te permiten la habilidad para crear interfaces de usuario más complejas “sobre capas” en Maven. Una interfaz “en capas” te permite solo manejar tu adecuación de código local (en tu local CVS o SVN), y automáticamente descargas el resto del código de la interfaz del repositorio central de maven. Este reduce la cantidad de código desempacado de la interfaz de DSpace mantenido en su CVS/SVN local. 3.2 Visión general de los directorios de DSpace Antes de comenzar con una instalación, es importante tomar conocimiento general de los directorios de DSpace y los nombres de los cuales son referidos generalmente. DSpace utiliza 3 arboles de directorio separados. Aunque no necesitas saber todos los detalles de estos para instalar DSpace, no necesitas saber que existen y tampoco como se refieren en este documento: 1. El directorio de instalación, referido como [dspace]. Esta es la ubicación en donde esta instalado y ejecutado Dspace de el es la ubicación que esta definida en el dspace.cfg como “dspace.dir”. En donde están todos los archivos de configuración de Dspace, líneas de comando, documentación y aplicaciones web que serán instaladas. AP ROAF UABC 8 Manual de Instalación DSpace 2. El directorio fuente, referido como [dspace-source]. Esta es la ubicación donde ha sido descomprimida la distribución de la versión de Dspace. Este usualmente tiene el nombre de el archivo que expandirá como sigue dspace<versión>-release o dspace-<versión>-src release. Este es el directorio donde todos tus comandos de “construccion” serán ejecutados. 3. El directorio de implementación web. Este es el directorio que contiene las aplicaciones web de Dspace. En Dspace 1.5.1 y anterior, le corresponde a [dspace]/webapps por default. Sin embargo, si tu estas usando Tomcat, podrías decidir copiar las aplicaciones web de Dspace de [dspace]/webapps/ a [tomcat]/webapps/ . 3.3 Instalación Este método te levanta y tiene corriendo Dspace rápida y fácilmente. Este es idéntico en ambas distribuciones la versión por default y la versión fuente. 1. Crear un usuario Dspace. Este necesita ser el mismo usuario que Tomcat correrá como por ejemplo: useradd -m dspace 2. Descarga la ultima versión [http://sourceforge.net/projects/dspace/] y desempaquétalo. Aunque ahí hay dos versiones disponibles (dspace -1.5.1release.zip y dspace-1.5.1-src-release.zip), solo necesitas escoger uno. Si quieres copiar todo el código fuente de java, deberías descargar la versión dspace-1.5.1-src-release.zip unzip dspace-1.5.1-release.zip Para fácil referencia, referiremos a la ubicación de la versión descomprimida de Dspace como [dspace-source] en el resto de estas instrucciones. 3. Instalación de la base de datos. Postgres: a) El driver PostgreSQL 8.1-404 jdbc3 esta configurado como parte de la construcción por default de Dspace. b) Crear una base de datos Dspace, propietaria del usuario de dspace PostgreSQL: createuser -U postgres -d -A -P dspace createdb -U dspace -E UNICODE dspace AP ROAF UABC 9 Manual de Instalación DSpace Introducir una contraseña para la base de datos de Dspace. (Esta no es la misma que la contraseña del usuario de Linux) 4. Edita [dspace-source]/dspace/config/dspace.cfg, en particular necesitas un conjunto de estas propiedades: dspace.dir – debe ser conjunto de el directorio [dspace](instalacion). dspace.url – completa el URL de la página inicial del servidor de Dspace. dspace.hostname – completamente calificado el nombre del dominio del web server. dspace.name -- “apropiado” nombre de tu servidor, por ejemplo “My Digital Library”. db.password -- La contraseña de la base de datos que introdujiste en el paso anterior. mail.server -- nombre de dominio completamente calificado del correo del servidor. feedback.recipient -- bandeja para la regeneración de correos. mail.admin -- bandeja de correos para el sitio de administrador de Dspace. alert.recipient -- bandeja de correo para los errores o alertas del servidor. registration.notify -- bandeja de correo para los emails de usuarios registrados (opcional). NOTA: Puedes interpolar el valor de una variable de configuración con el valor de otra. Por ejemplo, para feedback.recipient al mismo valor como mail.admin, la línea se miraría como: AP ROAF UABC 10 Manual de Instalación DSpace feedback.recipient = ${mail.admin} mira el archivo dspace.cfg para mas ejemplos. 5. Crear el directorio para la instalación de Dspace (i.e. [dspace]). Como raíz , correr así: mkdir [dspace] chown dspace [dspace] (Asumiendo que el nombre de usuario de LINUX es dspace) 6. Como usuario de LINUX dspace , genera el paquete de instalación de Dspace en el directorio [dspace-source]/dspace/target/dspace-[versión].dir/: cd [dspace-source]/dspace/ mvn package NOTA: sin ningún argumento extra, el paquete de instalación de Dspace es inicializado por PostgreSQL. 7. Como dspace usuario de Linux ,inicializa la base de datos de Dspace e instala Dspace a [dspace]: cd [dspace-source]/dspace/target/dspace-[version].dir/ ant fresh_install ant help Lo más probable es que vaya a salir un error en la conexión de la base de datos. Mira la sección de problemas comunes. 8. Dile a la instalación de Tomcat donde encontrar tu aplicación web de Dspace. Como ejemplo, en la sección <Host> de tu [tomcat]/conf/server.xml podrías agregar líneas similares a lo siguiente (pero sustituya [dspace] con tu instalación local): AP ROAF UABC 11 Manual de Instalación DSpace <!-- DEFINE A CONTEXT PATH FOR DSpace JSP User Interface --> <Context path="/jspui" docBase="[dspace]\webapps\jspui" debug="0" reloadable="true" cachingAllowed="false" allowLinking="true"/> <!-- DEFINE A CONTEXT PATH FOR DSpace OAI User Interface --> <Context path="/oai" docBase="[dspace]\webapps\oai" debug="0" reloadable="true" cachingAllowed="false" allowLinking="true"/> Alternativamente, podrías copiar solo las aplicaciones Web de Dspace que desees usar de [dspace]/webapps al directorio apropiado en su instalación de Tomcat, por ejemplo: cp -r [dspace]/webapps/jspui [tomcat]/webapps cp -r [dspace]/webapps/oai [tomcat]/webapps 9. Crea una cuenta inicial de administrador [dspace]/bin/create-administrator 10. Ahora el momento de la verdad! Reinicia Tomcat. Visita el URL de la base de su servidor, dependiendo de cual aplicación web de Dspace utilizaste. Deberías de ver la página inicial de Dspace. Y Felicidades! URL de la base de la aplicación web de Dspace: JSP interfaz de usuario --(ej.)http://dspace.myu.edu:8080/jspiu XML interfaz de usuario -- (ej.) http://dspace.myu.edu:8080/xmlui OAI-PMH intefaz -- (ej.) http://dspace.myu.edu:8080/oai/request?verb=identify Para fijar algunas comunidades y colecciones, necesitaras iniciar sesión como administrador de Dspace (la cual ya creaste arriba con create-administrator) y entrar a la UI del administrador en cualquiera de las interfaces de usuario de JSP o XML AP ROAF UABC