By: Faslu Rahman

How to Install Odoo 11 on Ubuntu 16.04?

Odoo users and community, followers are very thrilled with the latest Odoo version release of  Odoo 11. It comes with more faster, smoother, attractive, user-friendly and self-explanatory user interface, highly improved API,  along with a lot of improvements and technical changes in,

- HR-Timesheet

- Accounting

- Localisation

- Odoo Studio

- Service Company

- Reporting and Dashboard

- New payment gateways

- Subscription App

- Web URL

Here we are going to discuss how to install Odoo ERP version 11 in ubuntu 16.04

Step 1: Update The Server

Make your system Updated using these two commands

sudo apt-get update
sudo apt-get upgrade

Step 2: Secure Server

It is common for all versions and many of you may be aware of this, but I'm still including this.

Run this command to make your server/system remotely accessible

sudo apt-get install openssh-server fail2ban

Step 3: Create a System User

Create a system user to run Odoo service. The source code of Odoo will reside in the home directory of this user if you follow these steps

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

Step 4: Install  and Configure PostgresQL database server

Install PostgresQL:

sudo apt-get install postgresql

Then switch into the postgres user:

sudo su - postgres

Create a postgresql user for managing Odoo databases:

createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo

Exit from postgres user to continue the installation:


Step 5: Install  dependencies for Odoo

For the better performance of Odoo, we need Python 3.

We will be installing these dependencies on Python 3. We need pip version 3 for that.

Install pip 3:

sudo apt-get install -y python3-pip

After the successful installation of pip3, Install dependencies using pip3:

sudo pip3 install Babel decorator docutils ebaysdk feedparser gevent greenlet html2text Jinja2 lxml Mako
 MarkupSafe mock num2words ofxparse passlib Pillow psutil psycogreen psycopg2 pydot pyparsing
PyPDF2 pyserial python-dateutil python-openid pytz pyusb PyYAML qrcode reportlab requests six 
suds-jurko vatnumber vobject Werkzeug XlsxWriter xlwt xlrd

There are some web dependencies for Odoo. like, Node.js and less

Install these web dependencies:

sudo apt-get install -y npm
sudo ln -s /usr/bin/nodejs /usr/bin/node
sudo npm install -g less less-plugin-clean-css
sudo apt-get install -y node-less

wkhtmltopdf is required to generate PDF reports from Odoo. Install ‘wkhtmltopdf’ on your server.

Most compatible version of wkhtmltopdf is 0.12.1

Get it from here,

sudo wget

Or from here,

sudo wget

These two commands will trigger the downloading of the package

If these both ain’t worked for you, There is another version maintained by Odoo. You can download that from here.

Install the package after downloading.

sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb

Then run these two commands to ensure the smooth working of the package

sudo cp /usr/local/bin/wkhtmltopdf /usr/bin
sudo cp /usr/local/bin/wkhtmltoimage /usr/bin

Step 6: Get Odoo

We can either download it from the Odoo’s website or Clone from Github repo

Here we are cloning from Git.

So, first, we have to install Git

sudo apt-get install git

Now, We should change our user as the system user we created for Odoo. otherwise, we will end up with access right related problems.

sudo su - odoo -s /bin/bash

Now we are ready to clone Odoo 11 (this is community only)

git clone --depth 1 --branch 10.0 --single-branch .

Note the '. ' at the end of the command.

This will download Odoo source files to the home directory of the user (/opt/odoo).

Step 7: Configure Odoo

At first, we are creating a log file location for Odoo. Odoo will create and maintain its log files there.

sudo mkdir /var/log/odoo

Give the full access of this directory to the odoo user

sudo chown odoo:root /var/log/odoo

After creating log directory, we are going to create a configuration file for Odoo.

There is a configuration file that comes with the Odoo we just downloaded.

We are copying that file to a more appropriate location

sudo cp /opt/odoo/debian/odoo.conf /etc/odoo.conf

We have to make some changes in the configuration file, to edit the file, we are using a text editor called nano

sudo nano /etc/odoo.conf

Here is the example of the configuration file


; This is the password that allows database operations:

; admin_passwd = admin

db_host = False

db_port = False

db_user = odoo

db_password = False

addons_path = /opt/odoo/addons

logfile = /var/log/odoo/odoo.log

After the configuration file is ready, We have to give the ownership of the file to the Odoo user

sudo chown odoo: /etc/odoo.conf
sudo chmod 640 /etc/odoo.conf

Step 8: Create a service to run Odoo

We have to create a systemd unit for Odoo, So that it can behave like a service.

Create a new file odoo.service at /etc/systemd/system/ just like we created the ‘odoo.conf’ file

sudo nano /etc/systemd/system/odoo.service

You can use this content for your file





# Ubuntu/Debian convention:



ExecStart=/opt/odoo/odoo-bin -c /etc/odoo.conf


Since this is a service, we are giving full rights on this file to root user.

sudo chmod 755 /etc/systemd/system/odoo.service
sudo chown root: /etc/systemd/system/odoo.service

Step 9: Test Odoo

Start the Odoo service

sudo systemctl start odoo.service

You can check the log file of Odoo

sudo tail -f /var/log/odoo/odoo.log

Step 10: Automating Starting of Odoo

This will enable the Odoo service to start automatically on boot time

sudo systemctl enable odoo-server

Step 11: Access Odoo

Open a new browser window and enter http://<your_domain_or_IP_address>:8069 in the address bar

If everything is working properly, you will redirect to Odoo's database creation page.



Leave a comment