Installing an ERP and CRM with Odoo on Raspberry Pi

Big companies usually spend a lot of money to have complete ERP (Enterprise Resource Planning) and CRM (Customer Relationship Management) solutions. These products usually support business and internal tasks to perform correctly complex processes. Small companies usually adopt low cost solutions (sometimes simple spreadsheets).

In this article, we’ll see a very simple way to setup Odoo on Raspberry Pi 3 model B+. Don’t expect surprising performances from this experiment, but this can be a funny way to play with your Raspberry Pi.

What is Odoo

Odoo, formerly known as OpenERP, is a suite of open-source business apps written in Python and released under the AGPL license. This is a suite of applications born to support companies in their business and internal processes. It has an Open Source basis (Community Edition), but its features can be easily expanded just adding modules. Odoo has also a Customer Support and Commercial features to support the needs of all companies.

What We Need

Raspberry PI 3 Model B+ image

As usual, I suggest adding from now to your favourite ecommerce shopping chart all needed hardware, so that at the end you will be able to evaluate overall costs and decide if continuing with the project or removing them from shopping chart. So, hardware will be only:

Check hardware prices with following links:

Amazon raspberry pi boards box
Amazon Micro SD box
Amazon Raspberry PI Power Supply box

Step-by-Step Guide

Preparing the Operating System

Start installing Raspberry PI OS Lite as operating system.

Our Odoo installation will be powered by defaul with a PostgreSQL database.

We’ll also use the root account. It is a simplification that we can apply to our development environment.  To unlock root user, from terminal:

sudo passwd

and then insert twice your desired password for root user. The login as root by typing:

su root

It is strongly recommended that you have updated your installation before starting:

apt update
apt upgrade

Install PostgreSQL

Installing the database is as simple as running a single command:

apt install postgresql -y

Installing Odoo

Also installing our Odoo instance is simple, but requires adding a new key and apt source :

wget -O - https://nightly.odoo.com/odoo.key | apt-key add -
echo "deb http://nightly.odoo.com/12.0/nightly/deb/ ./" >> /etc/apt/sources.list.d/odoo.list

then update the new source and install odoo:

apt update && apt install odoo

… and wait… Installation will require a while.

Once finished, connect with your browser to the following URL (substitute <<YourRaspberryIpAddress>> with the required IP address):

http://<<YourRaspberryIpAddress>>:8069

You will see the following initialization page:

odoo install page

Complile required fields (at your choice) and click on “Create Database”. Note that the field Email will be used as username, so in this filed you can also just use a simple username instead of a complete email address.

Again, wait a while to complete the database configuration. Because of the heavy setup process, the page could result in timeout. In this case, launch again in your browser the URL:

http://<<YourRaspberryIpAddress>>:8069

Login page will appear:

Odoo_install_2

You should use your email/username and password. If everything is ok, you will be logged on. If someting went wrong because of the heavy install, don’t give it up! You can use the admin password recover procedure.

Admin Password Recover Procedure

Type the following terminal command:

nano /etc/odoo/odoo.conf

Uncomment the “admin_passwd = admin” line, by eliminating commas. So, your odoo.conf should appear as the following:

[options]
; 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 = /usr/lib/python3/dist-packages/odoo/addons

Edit the admin password with whatever you want, save and exit. Restart Odoo:

systemctl restart odoo

Re-launch the default URL (http://<<YourRaspberryIpAddress>>:8069) in your browser and login using “admin” as Email and what you set in odoo.conf as password. If left as mine above, it will be:

Email: admin

Password: admin

You should now be able to use your Odoo installation.

Enjoy!