This is the documentation for older versions of Odoo (formerly OpenERP).

See the new Odoo user documentation.

See the new Odoo technical documentation.

OpenERP Web Installation

Here is the installation instructions for Debian based Linux distributions. Tested on Debian Etch and Ubuntu Hardy. The procedure might work with other Linux or similar distributions. See the docs on how to install the specified Packages on your favourite distro.

Prerequisites

  1. Python >= 2.4

  2. CherryPy >= 3.1.2

  3. Mako >= 0.2.4

  4. Babel >= 0.9.4

  5. FormEncode >= 1.2.2

  6. simplejson >= 2.0.9

  7. pyparsing >= 1.5.0

Remember, this version requires CherryPy3 which is conflicting with CherryPy2 (used by TurboGears), so you can't install both in system area. To overcome with the issue, we added support for local library installation for OpenERP Web. In that case, just download the source package and do the following...

Python

$ sudo apt-get install python python-dev build-essential
$ sudo apt-get install python-setuptools

This will install dependencies required for the following

$ cd /path/to/openerp-web/lib
$ ./populate.sh
$ cd ..

This will install all required dependencies in private lib directory, and you don't need to install anything...

OpenERP Web Client

$ sudo easy_install -U openerp-web

all other dependencies will be installed automatically by setuptools...

Configuration

Locate the config/default.cfg in the installed EGG, and make appropriate changes, especially:

[openerp]
server = "localhost"
port = 8070
protocol = "socket"

where:

  • server is the OpenERP server host

  • port is the OpenERP server port which is by default 8070 for NET-RPC or 8069 for XML(S)-RPC. The web server itself listens by default on port 8080 and connects to the OpenERP server using one of the above-mentioned ports. The final web browser connects to the Web server, so usually port 8080.

  • protocol is the protocol to be used (socket for NET-RPC, http for XML-RPC or https for XMLS-RPC)

Now start the web server with openerp-web command:

$ openerp-web

If you see message showing IOError: Port 8080 not free on '0.0.0.0' make sure no other application is running on the specified port (8080 is default).

You can change port by changing server.socket_port value in config/openerp-web.cfg.

If everything is fine, open your favourite web browser and type http://localhost:8080/, and your can see welcome page with login screen.

Please make sure cookies are enabled in your browser.

Of course, OpenERP Server must be running at that time. You should create a database from the DBAdmin interface by clicking on Databases button that you can see on the login screen. After creating a new database, login with the admin/admin or demo/demo user to see OpenERP in action...

Warning

Please make sure that the system time is properly set otherwise web browsers might fail to establish sessions. We strongly recommend you to synchronize system clock with NTP...

Run as service (daemon)

This has been tested on ubuntu only.To run openerp Web as a service you need to first locate the openerp_web-5.0.0-py2.5.egg ad copy the openerp-web file to etc/init.d/. An egg is a python package. "Eggs are to Pythons as Jars are to Java...".You can find the documentation about eggs at http://peak.telecommunity.com/DevCenter/PythonEggs The location of the egg depends on your distribution. For example path to openerp_web-5.0.6-py2.5.egg in Ubuntu 8.10 is:

/usr/lib/python2.5/site-packages/openerp_web-5.0.6-py2.5.egg/
$ sudo cp /path/to/openerp_web-5.0.0-py2.5.egg/scripts/openerp-web /etc/init.d/
$ sudo cp /path/to/openerp_web-5.0.0-py2.5.egg/config/openerp-web.cfg /etc/
$ sudo chmod +x /etc/init.d/openerp-web

edit /etc/init.d/openerp-web using any editor example:

$ sudo gedit /etc/init.d/openerp-web
USER="your system username"

and edit /etc/openerp-web.cfg:

$ sudo gedit /etc/openerp-web.cfg
log.access_file = "/var/log/openerp-web/access.log"
log.error_file = "/var/log/openerp-web/error.log"

Create /var/log/openerp-web/ with proper ownership

$ sudo mkdir /var/log/openerp-web/
$ sudo chown username /var/log/openerp-web/

Now run following command to start the OpenERP Web automatically on system startup (Debian/Ubuntu).

$ sudo update-rc.d openerp-web defaults

Start the deamon:

$ sudo /etc/init.d/openerp-web start

Note

The init script is compatible with all major Linux distributions. Please check docs of your distribution on how to enable services.

Configure HTTPS

The following text describes how to configure OpenERP Web for production environment over HTTPS with Apache2.

mod_proxy + mod_ssl (Apache2)

See Apache manual for more information.

Apache configuration

<VirtualHost *:443>

    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl/apache.pem

    <Proxy *>
        Order deny,allow
        Allow from all
    </Proxy>

    ProxyRequests Off

    ProxyPass        /   http://127.0.0.1:8080/
    ProxyPassReverse /   http://127.0.0.1:8080/

    RequestHeader set "X-Forwarded-Proto" "https"

    # Fix IE problem (http error 408/409)
    SetEnv proxy-nokeepalive 1

</VirtualHost>

OpenERP Web configuration

tools.proxy.on = True

Block the OpenERP Web server port (firewall)

$ iptables -A INPUT -i lo -j ACCEPT
$ iptables -A INPUT -p tcp --dport 8080 -j REJECT

Note

Don't block the localhost/121.0.0.1 (the first rule)

Note

This method only works if you want your OpenERP Web application at the root of your server (https://www.example.com) and can't be deployed under a subdirectory, e.g. http://www.example.com/openerp.

To overcome with the issue you can go with subdomain, like:

Web Browser Compatibilities

Supported browsers

OpenERP Web is known to work best with Mozilla based web browsers. Here is the list of supported browsers.

  1. Firefox >= 1.5

  2. Internet Explorer >= 6.0

  3. Safari >= 3.0

  4. Google Chrome >= 1.0

  5. Opera >= 9.0

Flash plugin

Your browser should have the Flash plugin installed because OpenERP Web uses some Flash components.

Here is how to install the Flash plugin on an Ubuntu system:

$ sudo apt-get install flashplugin-nonfree