Back Home


postgres install

sudo apt-get install python-psycopg2
sudo apt-get install libpq-dev
sudo apt-get install libxml2-dev libxslt1-dev
sudo apt-get install libjpeg-dev
sudo pip install pillow --upgrade
sudo apt-get install node-less
sudo apt-get install python-lessc

odoo install

git clone 
apt-get install python-pip
pip install -r requirements.txt
git clone .. 
sudo npm install -g less

See also odoo Linode install

Installing Apache2 proxy (on ubuntu)

sudo apt-get update -y
sudo apt-get upgrade -y

You can install Apache by simply running the following command:

sudo apt-get install apache2 -y

Once Apache has been installed, start the Apache service and configure it to start automatically when the server boots:

sudo /etc/init.d/apache2 start
sudo update-rc.d apache2 defaults

To proxy html files we need to add the html proxy module. Start the apache2 console and add the module

sudo a2enmod proxy
sudo a2enmod proxy_http
sudo a2enmod proxy_ajp
sudo a2enmod rewrite
sudo a2enmod deflate
sudo a2enmod headers
sudo a2enmod proxy_balancer
sudo a2enmod proxy_connect
sudo a2enmod proxy_html

and restart the server

service apache2 restart

Next, you will need to disable Apache default configuration file 000-default.conf and create a new virtual host file inside the /etc/apache2/sites-available directory to set up “proxying” functionality.

To disable the 000-default file, run:

sudo a2dissite 000-default

Then, create a new virtual host file:

sudo nano /etc/apache2/sites-available/proxy-host.conf

Add the following lines to suit your needs:

<VirtualHost *:80>
  ServerAdmin webmaster@localhost
  DocumentRoot /var/www/
  ErrorLog ${APACHE_LOG_DIR}/error.log
  CustomLog ${APACHE_LOG_DIR}/access.log combined
  ProxyPreserveHost On
  # Servers to proxy the connection, or
  # List of application servers Usage
  ProxyPass / http://localhost:8069/
  ProxyPassReverse / http://localhost:8069/
  ServerName localhost

Save and close the file.

Enable new virtual host file:

sudo a2ensite proxy-host

Note: If you don't want the default 80 port then apache to listen to other ports e.g. 8080.

You can do this by editing the ports.conf file:

sudo nano /etc/apache2/ports.conf

Add the following line:

Listen 8080

Save the file and restart Apache.

sudo /etc/init.d/apache2 restart

Proxying should be working for you now. When you access the URL http://server-ip-address:80 in a browser, it will show the application which is running on http://server-ip-address:8080. The browser is not aware that the application is running on port 8080.

Note: Apache2 says. You should replace this file (located at /var/www/html/index.html) before continuing to operate your HTTP server.

Using and configuring the the Odoo server

Official documenation the /etc/odoo.conf can be configured to be single or multi-threaded


  • copy the odoo folder
  • start server using different port like pass –xmlrpc-port=8000 in odoo folder and pass –xmlrpc-port=8001 in odoo1 folder that will run two different instances of odoo with different code-base. Also you can pass –dbfilter to restrict limited database access per port.

- edit this file /opt/odoo8/openerp/tools/

- change the ports :

("--xmlrpc-port", dest="xmlrpc_port", my_default=8069,

("--longpolling-port", dest="longpolling_port", my_default=8072,

("--xmlrpcs-port", dest="xmlrpcs_port", my_default=8071

Multi Company setup

Odoo has a multi-company mode. Multi-Company is enabled, then automatically it will share product to all companies

It Indicates, if a product is created in main company, then it will be listed in all sub company, i.e child_of. So cut the link, the product will not be shared among your sub company

Apps and Plugins


individual group and user access can be applied to pages, fields and transitions

  • Settings → Technical → Security → Records Rules
  • Settings page also has Google authenticaion

“Use external authentication providers, sign in with Google…”


Hosting Options

Caching and CDN's

  • odoo documentation has a description of using KeyCDN which for our very low expected usage would be something like

$0.04 / month

Educational Product

  • OpenEduCat is a fully open source ERP system for educational institute, for efficient management of students, faculties, courses and classes keeping a collaborative platform.

Odoo Docker

Ensure docker is installed (or run)

apt install

Running with a custom config for local postgres

  • Run Odoo with a custom configuration

The default configuration file for the server (located at /etc/odoo/odoo.conf) can be overriden at startup using volumes. Suppose you have a custom configuration at /path/to/config/odoo.conf, then

$ docker run -v /home/richard/odoo_config:/etc/odoo -p 8069:8069 --name odoo --link db:db -t odoo

Run multiple Odoo instances

$ docker run -p 8070:8069 --name odoo2 --link db:db -t odoo
$ docker run -p 8071:8069 --name odoo3 --link db:db -t odoo

The docker instance requires environment variables for the database

set --env PASSWORD="db password"

odoo_notes.txt · Last modified: 2018/11/16 23:55 by root
RSS - 200 © CrosswireDigitialMedia Ltd