sábado, 30 de marzo de 2013

Instalar OpenERP 7.0 en Ubuntu 12.04

OpenERP es un sistema de gestión de información empresarial integral, modular y adaptable, distribuido como software libre bajo licencia AGPL.  Ya dedicamos dos publicaciones [1] - [2] a la definición de OpenERP, es el momento de entrar en acción, el primer paso que vamos a dar es la instalación de la última versión estable, la 7.0, en el sistema operativo Ubuntu 12.04 LTS.

[1] (re) Definiendo el concepto ERP 
[2] OpenERP es Software Libre no solo Open Source

Esta entrada está basada en la publicación "How to install OpenERP 7.0 on Ubuntu 12.04 LTS" del blog "The Open Sourcerer" la cual está amparado con licencia "Creative Commons Attribution-Share Alike 3.0".  Agradecemos al autor el permitirnos a través de esta licencia realizar una obra derivada.

Paso 1: Crear un usuario del sistema para ejecutar OpenERP


Lo primero que haremos es crear un usuario del sistema, en Ubuntu un usuario del sistema es diferente a un usuario normal, por lo tanto no aparecerá en las opciones de acceso (login) cuando se arranque el sistema, ni podrá usarse en la terminal o consola.  El objetivo en este paso es tener un usuario del sistema que ejecute OpenERP, para ello le asignamos el directorio en el que instalaremos luego OpenERP, en este caso /opt/openerp, si no existe el directorio, este será creado automáticamente.  Si decide utilizar un directorio diferente tenga en cuenta que deberá ajustar algunas instrucciones de esta guía para que se adapten a su propio contexto

sudo adduser --system --home=/opt/openerp --group openerp

Paso 2: Instalar y configurar el servidor de base de datos PostgreSQL


Instalamos PostgreSQL con el siguiente comando:

sudo apt-get install postgresql

Pasamos a trabajar con el usuario postgres para tener los privilegios necesarios para configurar la base de datos:

sudo su - postgres

Creamos un nuevo usuario de la base de datos.  Este será el usuario que asignaremos en la configuración de conexión a la base de datos del servidor OpenERP, tendrá permisos para crear y borrar bases de datos.  En este paso deberá asignar una contraseña, no la olvide, la necesitará más adelante:

createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt openerp
Enter password for new role: ********
Enter it again: ********


Finalmente salimos del usuario postgres:

exit

Paso 3: Instalar librerías Python requeridas por el servidor OpenERP 


Con el siguiente comando instalamos todas las librerías necesarias (dependencias) para el correcto funcionamiento del servidor OpenERP:


Paso 4: Instalar el servidor OpenERP 


Obtenemos las fuentes de OpenERP desde su página de descargas:

https://www.openerp.com/es/pricing

Seleccionamos el enlace que suministra las fuentes, Sources:


Si aún no es un usuario registrado deberá diligenciar el siguiente formulario para poder acceder a la descarga:


Si todo ha salido bien, se descargará un archivo llamado openerp-7.0-latest.tar.gz

Para instalarlo vamos primero al directorio que creamos en el Paso 1:

cd /opt/openerp

Extraemos los archivos (descomprimimos):

sudo tar xvf ~/openerp-7.0-latest.tar.gz

Si la carpeta queda con un nombre como openerp-7.0-20130117-134423 se lo cambiamos a server de tal manera que la ruta del servidor quede así: /opt/openerp/server/.

Asignamos permisos para el directorio, al usuario y grupo creados en el Paso 1:

sudo chown -R openerp: *

Paso 5: Configurar el servidor OpenERP 


Copiamos el archivo openerp-server.conf que se encuentra en /opt/openerp/server/install a la carpeta /etc/ y le asignamos los permisos adecuados:

sudo cp /opt/openerp/server/install/openerp-server.conf /etc/
sudo chown openerp: /etc/openerp-server.conf
sudo chmod 640 /etc/openerp-server.conf


Las instrucciones anteriores asignan la propiedad del archivo con permisos de escritura al grupo y usuario openerp, y con permisos de solo lectura a los usuarios openerp y root.

Modificamos el archivo openerp-server.conf para suministrarle la contraseña de la base de datos:

sudo gedit /etc/openerp-server.conf

En la línea db_password = False cambiamos False por la contraseña que elegimos en el Paso 2.

Adicionamos una línea en el archivo openerp-server.conf para indicarle a OpenERP donde escribir el archivo del log:

logfile = /var/log/openerp/openerp-server.log

La configuración está lista, es hora de probar si todo anda bien:

sudo su - openerp -s /bin/bash
/opt/openerp/server/openerp-server


El resultado de la anterior instrucción es el despliegue de varias líneas en la consola como las siguientes:


Para detener la ejecución del servidor OpenERP presionamos simultáneamente las teclas CTRL y C.

Para salir del usuario openerp escribimos exit.

Paso 6: Lanzar OpenERP al arranque del sistema 


Haremos que OpenERP sea lanzado como un servicio de Ubuntu 12.04, es decir que se inicie y detenga automáticamente cuando se arranque o apague el sistema.

Para ello creamos un archivo con nombre openerp-server y lo ubicamos en el directorio /etc/init.d/, editamos el archivo para que quede con el siguiente contenido:


Asignamos el archivo al usuario root y lo hacemos ejecutable:

sudo chmod 755 /etc/init.d/openerp-server
sudo chown root: /etc/init.d/openerp-server


Creamos el directorio con los permisos correspondientes para el archivo log de acuerdo a la configuración realizada en el Paso 6:

sudo mkdir /var/log/openerp
sudo chown openerp:root /var/log/openerp


Finalmente automatizamos el lanzamiento de OpenERP con el arranque del sistema:

sudo update-rc.d openerp-server defaults


Paso 7: Probar el servidor OpenERP 


Iniciamos el servidor OpenERP:

sudo /etc/init.d/openerp-server start

Ahora abrimos un navegador (chrome recomendado) y en la barra de direcciones escribimos:

http://localhost:8069

Lo anterior suponiendo que está usando localhost, de lo contrario reemplace localhost por su dominio o IP.

Una vez iniciado OpenERP verá lo siguiente en pantalla:


Detenemos el servidor OpenERP:

sudo /etc/init.d/openerp-server stop

------------------------------------

Espero les sea útil, hasta la próxima.


14 comentarios:

  1. Muchas gracias por la traduccion. Estamos implementando OpenERP en la Asociacion donde trabajo, y este primer paso (bueno, en realidad el primero es tener los procedimientos manuales funcionando) nos servira mucho.
    Saludos y animo.

    ResponderEliminar
  2. Les dejo una pagina donde muestra presentan un script para la instalación de Open ERP 7.0 sobre plataformas Centos. Espero les sirva,

    http://forum.openerp.com/forum/topic36094.html

    Este script suple el paso 1 al 6 del manual de Hector, una vez corrido y si todo va bien ya es solo seguir en el paso 7.

    ResponderEliminar
  3. hola que tal mi amigo necesito tu ayuda por favor! instale el openerp v7 en ubunto 13.4 y va corriendo localmente "http://localhost:8069/" cree toda la base de datos y los modulos, soy novato en esto y desearia cambiar el localhost por mi ip y coneptarme desde cualquier lugar desde mi lapto ejemplo "http://54.228.186.02:8069/web/webclient/home#", si tienes como ayudrme mil gracias de ante mano

    ResponderEliminar
    Respuestas
    1. Si estas en una red local y la ip del equipo en el que tienes instalado OpenERP es fija, puedes acceder reemplazando "localhost" por dicha ip.

      Según los datos que suministras, sería suficiente con ir a la dirección http://54.228.186.02:8069

      Eliminar
    2. Utiliza un alias para tu ip por ejemplo http://dyn.com/dns/ te permite enmascarar tu ip dinamica por una direccion por ejemplo www.openerp-ht.com y con ella acceder desde cualquier lugar siempre y cuando tengas internet en tu servidor!

      Salud

      Eliminar
  4. excelente muy bueno, bastante practico y entendible, de pronto algún blog de como ir personalizando cada modulo

    ResponderEliminar
    Respuestas
    1. En la Comunidad OpenERP Colombia encontrará información que le puede ser útil para este propósito: https://plus.google.com/u/0/communities/113251920989277948689

      Eliminar
  5. En que momento se instala el servidor web, o ubuntu desktop lo trae por defecto.
    JOSE

    ResponderEliminar
    Respuestas
    1. No es necesario instalar nada más, puede ver la arquitectura de OpenERP en este enlace: https://doc.openerp.com/trunk/server/02_architecture/

      Eliminar
  6. Lo instale en ubuntu desktop y esta perfecto. Hoy lo probare en el ubuntu server.
    Solo te hago una pregunta .Cual es la diferencia entre la contraseña maestra y la contraseña de admin porque yo entro con el usuario admin y su respectiva contraseña?

    FELICITACIONES MUY BUENO EL MANUAL!!!

    ResponderEliminar
    Respuestas
    1. La contraseña maestra se utiliza para acciones sobre las bases de datos tales como crear, eliminar, duplicar, realizar copias de seguridad y restaurar copias de seguridad.

      En la instalación de OpenERP la contraseña maestra por defecto es 'admin', es recomendable cambiarla.

      Esta contraseña NO se asocia a ningún usuario dentro de las bases de datos que se crean en OpenERP.

      ------------

      De otra parte, el usuario admin se genera automáticamente para cada base de datos que se crea en OpenERP, a este usuario se le pueden asignar permisos para instalar módulos y realizar configuraciones técnicas de cada base de datos en concreto.

      Cada base de datos es una empresa.

      ------------

      Eliminar
  7. Excelente aclaracion Hector, recomiendo a todos los usuarios despues de haber hecho mis pruebas,instalar el openerp en ubuntu server, el desempeño es mas rapido, consume menos recursos ya que no tiene escritorio, y la estabilidad es excelente. Al momento de la instalacion casi al final el ubuntu server pide que seleccionemos la aplicacion de servidor:
    Solo seleccionar servidor ssh, luego todos los pasos igual.
    No usar como editor de archivos gedit sino nano es igual solo que funciona en consola.
    Para accederlo desde la lan simplemete colocar:
    http://iplocal_server_openerp:8069
    Para accederlo desde remoto simplemente asociar la ip local y colacarla en la opcion dmz del router luego acceder asi:
    http://ip_publica_router:8069

    ResponderEliminar
  8. Si la ip publica del router cambia constantemente, simplemnete asociarla a una cuenta dyndns y asunto arreglado.

    ResponderEliminar
  9. Una guía genial. Servidor OpenERP instalado. Lo único es que mi instalación usa nano en lugar de gedit como editor de texto y al ser totalmente novato en Linux pues me bloqueé un poco en el punto 5 donde hay que editar el archivo openerp-server.conf. Pero gracias a San Google lo pude resolver.

    Gracias por la guía.

    ResponderEliminar