Installer OpenERP 7 sur Debian 6 squeeze

closeCet article a été publié il y a 11 ans 10 mois 10 jours, il est donc possible qu’il ne soit plus à jour. Les informations proposées sont donc peut-être expirées.

OpenERP, le logiciel de Gestion d’Entreprise ou ERP vient de sortir dans nouvelle mouture : la version 7. Avant de nous livrer à une découverte plus approfondie d’un des logiciels phares de l’open source dans cette catégorie, voici un tutoriel pour réaliser son installation sur un système d’exploitation Debian 6.

Préparation du serveur avec Debian 6

Créons d’abord un utilisateur openerp qui sera utilisé pour faire fonctionner l’application OpenERP.

adduser --system --quiet --shell=/bin/bash --home=/opt/openerp --gecos 'OpenERP' \
    --group openerp

Installons ensuite la base de données PostgreSQL

apt-get install postgresql

Cette partie encadrée est peut-être optionnelle. Dans mon cas, j’ai du réaliser ces opérations suite à l’installation. Un message d’erreur indiquait un problème d’encodage lors de la création de la base de données. ATTENTION : ne jamais faire sur une base de données en production, cela détruirait toutes vos données.

Il faut forcer PostgreSQL à utiliser de l’UTF8. Pour cela il faut utiliser les commandes

pg_dropcluster --stop 8.4 main
pg_createcluster --start -e UTF-8 8.4 main

Ajoutons openerp comme un super-utilisateur PostgreSQL

su - postgres -c "createuser -s openerp" 2> /dev/null || true

Installons les dépendances nécessaires au bon fonctionnement d’OpenERP

apt-get install python-dateutil python-feedparser python-gdata python-ldap \
    python-libxslt1 python-lxml python-mako python-openid python-psycopg2 \
    python-pybabel python-pychart python-pydot python-pyparsing python-reportlab \
    python-simplejson python-tz python-vatnumber python-vobject python-webdav \
    python-werkzeug python-xlwt python-yaml python-zsi python-docutils \
    python-psutil bzr wget python-unittest2 python-mock

Il faut ajouter la dernière version de la librairie gdata-python-client depuis http://code.google.com/p/gdata-python-client/downloads/list

cd /tmp
wget http://gdata-python-client.googlecode.com/files/gdata-2.0.17.tar.gz
tar zxvf gdata-2.0.17.tar.gz
cd gdata-2.0.17/
python setup.py install

Installation d’OpenERP depuis Launchpad

Nous allons récupérer les fichiers depuis le dépôt de sources launchpad.net et les placer dans /opt/openerp. Nous récupérerons la version 7.0 des sources.

su - openerp
cd /opt/openerp
bzr branch lp:openobject-server/7.0 server
bzr branch lp:openobject-addons/7.0 addons
bzr branch lp:openerp-web/7.0 web

Vous pouvez également télécharger les nightly builds depuis cette page. Décompressez ensuite le fichier télécharger. Il contient un répertoire nommé openerp qu’il vous suffit de placer dans le répertoire /opt.

Il faut ensuite créer un simple script bash pour lancer OpenERP. Vous pouvez changer les ports utilisés dans le script selon vos besoins.

vi start
#!/bin/bash
./server/openerp-server --xmlrpc-port=40069 --netrpc-port=40070 --addons-path=addons,web/addons $1 $2 $3 $4 $5&

Pour connaître toutes les options, vous pouvez utiliser la commande suivante :

./server/openerp-server -h

Rendez le script bash exécutable :

chmod +x start

Lancer OpenERP en vous plaçant dans le dossier /opt/openerp par la commande :

./start

Fin de l’installation depuis l’interface web

Rendez-vous ensuite sur l’url http://nomdelamachine_ou_adresseIP:40069

Un page vous propose de créer une première base de données et de spécifier le mot de passe du compte administrateur qui lui sera associé.

Installation Open-ERP

Le mot de passe principal par défaut est : admin. Pensez à le changer ensuite. Il ne vous reste plus qu’à activer les modules qui vous sont utiles sur la page suivante pour commencer à utiliser OpenERP.

Installation Open-ERP

Mode opératoire basé sur cet article de .

Philippe Scoffoni

Je barbote dans la mare informatique depuis 30 ans (premier ordinateur à 16 ans, un ORIC ATMOS) et je travaille à mon compte au travers de ma société Open-DSI. J'accompagne les associations, TPE et PME dans leurs choix et dans la mise en oeuvre se solutions informatiques libres.

30 réponses

  1. mp dit :

    Merci Philippe pour ce guide.

    Une procédure, en anglais, pour l’installation sur Ubuntu 12.04LTS, par conséquent très proche de celle-ci, mais avec notamment un boot script en prime : http://www.theopensourcerer.com/2012/12/how-to-install-openerp-7-0-on-ubuntu-12-04-lts/

    Reste que c’est une version alpha, une beta semble dispo sur http://nightly.openerp.com/trunk/nightly/src/ et, un point qui ne me paraît simplement anecdotique, la traduction française est loin d’être complètement assurée, un motif de rejet immédiat de la part de beaucoup de responsables de petites entreprises en France… :/

    Maintenant, il doit être possible de contribuer à ces traductions, un point d’entrée peut-être : http://doc.openerp.com/v6.0/contribute/07_improving_translations.html

  2. Patrice DEBONNE GEORGES dit :

    Merci pour cette article sur Open ERP.

    Connaissez-vous un (ou des) logiciel libre pour les Ressources Humaines:
    Gestion du temps et des absences
    Gestion de la paye
    Gestion des IRP et des données sociales
    Gestion des compétences et des talents
    Recrutement
    etc.

  3. Philippe dit :

    Bonjour Patrice,

    Il n’existe malheureusement pas de solution « out of the box » pour votre demande. Elle n’a cependant rien d’exceptionnelle. Je dirais qu’il y a « des » solutions, voir qu’il faut envisager un assemblage de solutions. Certains modules d’OpenERP répondent à des besoins que vous avez exprimés, mais encore faut-il vérifier la bonne adéquation besoins/fonctions existantes et envisager si nécessaire des développement complémentaires. Bref c’est réalisable au travers d’OpenERP, mais il faut consacrer un peu de temps pour trouver la solution qui ira à votre pied.

  4. Fouko dit :

    Pouvez vous nous donner quelques bonnes adresses web afin d’échanger et trouver des solutions lors de la « personnalisation » d’OpenERP.
    Merci

  5. Philippe dit :

    heu ben j’oserais dire que coté professionnel vous pouvez déjà contacter Open-DSI où je conseille les entreprises dans les choix de leurs outils informatique. Après il y a pas mal de société de service spécialisée sur OpenERP.
    Sinon il y a le forum français d’OpenERP

  6. sulliwane dit :

    Bonjour Philippe,

    merci pour post utile !

    Cependant, après 30 mn de téléchargement : with bzr branch lp:openobject-addons/7.0 addons
    je ne trouve rien dans le dossier addons !! très surprenant, d’autant que c’est toujours la même chose depuis que j’essaie d’installer OERP7 :o(

    Et quand je lance OpenERP :
    error: option –addons-path: The addons-path ‘addons’ does not seem to a be a valid Addons Directory!

    tandis que la commande bzr fonctionne parfaitement pour server et web…

    Si tu as une idée là dessus, je suis preneur !

    merci !

  7. Philippe dit :

    @sulliwane : tant que vous n’avez pas réussi à récupérer le dossier addon depuis le dépot, je pense que le message va perdurer.. J’avoue ne pas comprendre pourquoi vous n’obtenez rien avec la commande d’export…

  8. sulliwane dit :

    Merci pour la réponse.
    J’ai finalement obtenu la solution sur le post de Nikola qui m’a suggéré que cela pouvait venir d’un manque de RAM…en effet, je lançais la commande depuis une VM ubuntu + connexion internet mauvaise.
    La commande bzr a du prendre trop de mémoire et s’arrêter avant la fin ! Du coup j’ai essayé depuis ma « vraie » ubuntu, ce qui a fonctionné 🙂

    J’ai été surpris néanmoins du poids total du répertoire addons, ~900 Mo !! Je n’imaginais pas une seconde qu’il pouvait être aussi lourd.

    Sinon que dire, OpenErp 7 c’est vraiment du jolie travail. Que pensez vous du mode de développement adopté par la core team ? J’ai entendu dire que la prise en compte des patchs sur tout ce qui touchait au framework openerp était bien souvent longue, et l’esprit de dev pas forcément aussi ouvert que le code lui même…

    Bonne continuation !

  9. SISalp dit :

    Bonjour,

    si vous installez Openerp sur un serveur déjà en utilisation, la recréation du cluster postgresql peut être un problème.
    Voici la partie de script bash que j’utilise pour palier ce problème sans perdre les bases existantes :
    if ! su postgres -c /usr/bin/psql -l | grep template1 | grep -q UTF8 ; then
    su postgres -c /usr/bin/psql << EOF
    UPDATE pg_database SET datistemplate = FALSE WHERE datname = 'template1';
    DROP DATABASE template1;
    CREATE DATABASE template1 WITH TEMPLATE = template0 ENCODING = 'UNICODE';
    UPDATE pg_database SET datistemplate = TRUE WHERE datname = 'template1';
    \c template1
    VACUUM FREEZE;
    \q
    EOF
    fi
    je ne suis pas expert Postgresql, mais cela semble convenir à toutes les versions d'Openerp, de la V5 à la V7
    merci pour vos avis.

  10. SISalp dit :

    @sulliwane :
    lors d’une copie de Launchpad, toutes les informations historiques sont transmises. Il faut du disque et beaucoup de mémoire. Il faut ensuite supprimer le .bzr pour ne garder que les fichiers utiles. Le volume diminue alors spectaculairement.
    D’autre part, si tu ne précises pas une révision, rien ne garantit que ce que tu télécharges a été testé.
    C’est pour cela qu’il vaut mieux installer des nightly builts ou d’une de leurs copies sur internet.
    cordialement

  11. Philippe dit :

    @ SISalp Merci pour ces infos techniques

  12. sulliwane dit :

    @SISalp oui, merci. c’est noté !

  13. emmanuel dit :

    Bonjour à tous,

    un petit renseignement je suis nouveau sur debian alors soyez indulgent 😉
    quand sisalp dit il faut mieux installer depuis nightly builts
    comment fait on ?
    le tutoriel complet n’est plus d’actualité dans ce cadre ou uniquement la partie bzr ?
    j’ai trouvé une ligne à ajouter au dépot , cela j’ai su faire 😉
    mais après je tape quoi apt-get install openerp ?
    je serai en version 7 ou je risque de récupérer une autre version.

    merci d’avance pour vos éclairages.

    cordialement à tous
    manu

  14. sulliwane dit :

    les nightlies dont parle sysalp sont ici : http://nightly.openerp.com/7.0/nightly/src/

  15. Philippe dit :

    Bonjour Emmanuel,
    Pas de mal à être newbie on l’a tous été un jour 😉

    >quand sisalp dit il faut mieux installer depuis nightly builts comment fait on ?
    En fait ce qui change c’est la façon dont tu récupères les sources d’OpenERP. Je n’ai effectivement peut-être pas pris la meilleure option. Les nightly built
    sont là
    https://www.openerp.com/fr/pricing
    ou plus directement là
    http://nightly.openerp.com/7.0/nightly/src/openerp-7.0-latest.tar.gz

    Tu décompresses le contenu du ficher tar (tar -xzf openerp-7.0-latest.tar.gz)
    Dans cette archive se trouve un dossier openerp (qui contient les répertoires addons, etc…) et que tu places dans /opt.

    Cela replace le téléchargement des sources depuis bzr.

    >j’ai trouvé une ligne à ajouter au dépot , cela j’ai su faire 😉 mais après je tape quoi apt-get install openerp ?

    Quelle ligne ? Openerp n’est pas dans les dépôts standard de Debian. A moins que quelqu’un ait fait un dépôt pour OpenERP, mais je n’ai pas l’info..

  16. Jopa dit :

    Super tuto. Une installation très simple en se laissant guider.

    Merci !

  17. laurent dit :

    Bonjour Philippe,
    Merci pour ce tutorial.
    je l’ai suivi pas à pas (enfin il me semble) mais j’ai un soucis :
    lorsque je me connecte http://localhost/40069 avec epiphany j’ai une reponse du serveur : le logo openerp apparait devant l’adresse mais la page reste blanche. Une idée pour débloquer la situation ?

    Laurent

  18. Philippe dit :

    j’avoue que c’est un peu difficile comme ça de diagnostiquer le problème 🙂 . D’autant que je ne suis pas non plus un spécialiste de cet outil
    s.. Juste une remarque mais je pense que c’est une erreur de frappe dans le commentaire mais l’url est http://localhost:40069 (deux points et pas slash)

  19. laurent dit :

    exact pour les deux points, c’est bien ce que j’avais mis dans l’adresse 🙂
    mais pas de réponse je vais peut être tout désinstaller et reprendre avec une nightly, un avis ?

  20. Philippe dit :

    Visiblement c’est ce qui est conseillé. Voir commentaire un peu plus haut

  21. Patrick dit :

    Bonjour Philippe,

    Je crois que emmanuel parle de  » deb http://nightly.openerp.com/7.0/nightly/deb/ ./ » Je viens de tester sur une machine de test et ça semble fonctionnel ( quoique à faire attention à quelques petits détails de conf, par exemple mettre any dans le openerp-server.conf au lieu de localhost )

    Source : http://lathama.net/Installing_OpenERP_7_on_Debian

  22. Philippe dit :

    Merci pour l’info Patrick, un dépôt Debian c’est carrément le luxe 🙂 !

  23. Smos dit :

    Bonjour,
    Tout d’abord merci pour ce tutoriel, simple et efficace. Ce tuto à très bien fonctionné sur un ordi en local mais lorsque je l’ai installé sur une VM (debian squeeze) sur un serveur xen distant, avec une redirection web faite par Varnish; je me suis heurté au problème suivant :

    2013-03-18 13:29:17,962 7769 ERROR ? openerp.addons.web.http.JSONRequest.dispatch: An error occured while handling a json request
    Traceback (most recent call last):
    File « /opt/openerp/web/addons/web/http.py », line 196, in dispatch
    self.jsonrequest = simplejson.load(requestf, object_hook=reject_nonliteral)
    File « /usr/lib/pymodules/python2.6/simplejson/__init__.py », line 328, in load
    use_decimal=use_decimal, **kw)
    File « /usr/lib/pymodules/python2.6/simplejson/__init__.py », line 401, in loads
    return cls(encoding=encoding, **kw).decode(s)
    File « /usr/lib/pymodules/python2.6/simplejson/decoder.py », line 402, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
    File « /usr/lib/pymodules/python2.6/simplejson/decoder.py », line 420, in raw_decode
    raise JSONDecodeError(« No JSON object could be decoded », s, idx)
    JSONDecodeError: No JSON object could be decoded: line 1 column 0 (char 0)

    quelqu’un aurait il une idée ??
    Cordialement, Smos

  24. sulliwane dit :

    Hello,
    je ne connais pas Varnish. Mais après quelques essais, voici comment je procède avec openerp :
    1- créer la base postgresql avec l’utilisateur « openerp »
    2- ajouter : deb http://nightly.openerp.com/7.0/nightly/deb/ ./ à /etc/apt/sources.list
    3- apt-get update && apt-get install openerp
    4- tail -f /var/log/openerp (pour savoir sur quel port tourne openerp. habituellement 8069)
    5- sudo a2enmod proxy && sudo a2enmod proxy_http (on active la fonction proxy d’apache)
    6- nano /etc/apache2/sites-available/openerp
    ajouter ceci :

    ServerName openerp.fqdn.fr
    ServerAdmin admin@serveur.fr
    ProxyPass /

    ProxyPassReverse /

    ProxyPreserveHost On
    ProxyRequests Off

    Order deny,allow
    Allow from all

    ProxyVia on
    SetEnv proxy-nokeepalive 1

    7- a2ensite openerp && service apache2 restart

    You’re done ! bien sûr, ça ne passe plus par varnish….

  25. Smos dit :

    @sulliwane

    Merci beaucoup pour la réactivité je vais de ce pas essayer de voir comment je peux appliquer ta soluce à ma config. Je posterais un retour d’expérience dès que cela sera fait.

    A bientôt

  26. Patos dit :

    Bonjour,
    j’ai sytématiquement la même erreur sur une debian

    2013-06-05 07:53:06,557 23463 CRITICAL ? openerp.modules.module: Couldn’t load module web
    2013-06-05 07:53:06,557 23463 CRITICAL ? openerp.modules.module: ‘module’ object has no attribute ‘http’
    2013-06-05 07:53:06,557 23463 ERROR ? openerp.service: Failed to load server-wide module `web`.
    The `web` module is provided by the addons found in the `openerp-web` project.
    Maybe you forgot to add those addons in your addons_path configuration.

    mon path a pourtant l’air correct…
    Une idée ?

  27. thefreak dit :

    @Patos

    j’ai eu la même erreur et c’était a 100% de ma faute. Dans un moment de paresse. J’ai simplement fait fleche par en haut et changé le addons par web sans changer le path du p:openerp-web. J’avais donc 2 fois le contenu de addons. Dans ./addons et ./web

    apres un redownload du bon build tout marche impect.

  28. Loudgi dit :

    Bonjour,

    Pour le soucis de UTF-8 les commandes cités suffises ?

    Car moi j’ai un soucis :

    root@loudgi:~# pg_dropcluster –stop 8.4 main
    root@loudgi:~# pg_createcluster –start -e UTF-8 8.4 main
    Creating new cluster (configuration: /etc/postgresql/8.4/main, data: /var/lib/po stgresql/8.4/main)…
    could not change directory to « /root »
    initdb: encoding mismatch
    The encoding you selected (UTF8) and the encoding that the
    selected locale uses (LATIN1) do not match. This would lead to
    misbehavior in various character string processing functions.
    Rerun initdb and either do not specify an encoding explicitly,
    or choose a matching combination.
    Error: initdb failed

  29. Loudgi dit :

    Je teste maintenant de faire cette étape pour voir (google) :
    /etc/default/locale→ remplacer « LANG=fr_FR » par « LANG=fr_FR.UTF-8 »

  30. Loudgi dit :

    erf… je bug.

    A quel moment il faut forcer PostgreSQL a utiliser le UTF-8 ? Et est-ce juste ces commandes qu’il faut taper ?