How to Install Odoo ERP/CRM Platform on Ubuntu Server 20.04

Odoo was formerly known as Open ERP and TinyERP and served as a complete enterprise resource planning and customer relationship management solution in a powerful, open-source package. Odoo includes all the features you need for ERP/CRM, such as:

  • Easy to use user interface.
  • Flexible workflows.
  • Customizable reports.
  • Inventory management.
  • Sales and purchasing management.
  • Automation of tasks.
  • Marketing campaigns.
  • Help desk.
  • Point of sale.

Odoo can be used for retail, services, operations, finance, marketing, development, etc. It is scalable and extendable (with thousands of installable apps).

I want to walk you through installing Odoo on my server of choice, Ubuntu Server 20.04.

SEE: 40+ open source and Linux terms you need to know (TechRepublic Premium)

What you will need

The only things you will need for this to work are a running instance of Ubuntu Server 20.04 and a user with sudo privileges. That’s it, let’s get to work.

How to install dependencies

The first thing we are going to do is install the necessary dependencies. Connect to your server and install these packages with:

sudo apt-get install git python3-pip build-essential wget python3-dev python3-venv python3-wheel libxslt-dev libzip-dev libldap2-dev libsasl2-dev python3-setuptools node-less postgresql -y

How to create required users

We need to create a Linux user and a PostgreSQL user. Start by creating the Linux user with the command:

sudo useradd -m -d /opt/odoo -U -r -s /bin/bash odoo

Next, create the PostgreSQL user with:

sudo su - postgres -c "createuser -s odoo"

How to install Odoo

We are now ready to install the system itself. Switch to the odoo user with the command:

sudo su - odoo

Next, use git to clone the latest branch of Odoo (as of this writing, it’s 15):

git clone https://www.github.com/odoo/odoo --depth 1 --branch 15.0 /opt/odoo/odoo15

Switch to the newly created directory with:

cd /opt/odoo

Create a new virtual Python environment with:

python3 -m venv odoo15-venv

Activate the new environment with the command:

source odoo15-venv/bin/activate

Install the required Python modules with the following commands:

pip3 install wheel

pip3 install -r odoo15/requirements.txt

The second command above will take 5-10 minutes, so watch the output scroll by or go take care of another admin task. Once the commands complete, deactivate the environment and exit the odoo user with:

deactivate

exit

To activate the Odoo add-on system, we need to create a directory to host the downloaded files. Create the directory and give it the necessary permissions with:

sudo mkdir /opt/odoo/odoo15-custom-addons

sudo chown odoo: /opt/odoo/odoo15-custom-addons

Copy the default configuration file to /etc with the command:

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

Open the configuration file for editing with:

sudo nano /etc/odoo15.conf

Edit this file to look like this:

[options]

; This is the password that allows database operations:

admin_passwd = PASSWORD

db_host = False

db_port = False

db_user = odoo

db_password = False

addons_path = /opt/odoo/odoo15/addons

Where PASSWORD is a strong/unique password.

Save and close the file.

Now we need to create a systemd service file with:

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

 

[Unit]

Description=Odoo15

Requires=postgresql.service

After=network.target postgresql.service

 

[Service]

Type=simple

SyslogIdentifier=odoo15

PermissionsStartOnly=true

User=odoo

Group=odoo

ExecStart=/opt/odoo/odoo15-venv/bin/python3 /opt/odoo/odoo15/odoo-bin -c /etc/odoo15.conf

StandardOutput=journal+console

 

[Install]

WantedBy=multi-user.target

Save and close the file. Reload the systemd daemon with:

sudo systemctl daemon-reload

Start and activate the Odoo service with:

sudo systemctl enable --now odoo15

How to access Odoo

Odoo is now installed and running on your server. Open a web browser and point it to http://SERVER:8069 (where SERVER is either the IP address or domain of the hosting server). You will be prompted to fill in information for creating a new database (Figure A).

Figure A

Creation of the Odoo database.

Be sure to copy the generated random password for the database (or choose to use your own password). You can also check the box for demo data (especially if it’s your first time using Odoo).

Click Create Database and the installation will complete. Once done, you will end up on the Odoo Apps page (Figure B), where you can start selecting the applications you want to install to complement your new CRM/ERP solution.

Figure B

The Odoo Apps page includes many tools to add to the platform.

How to change the default admin user in Odoo

One of the first things you’ll want to do is change the default admin user, which is listed as Mitchel Admin and includes a random photo. To do this, click on the four squares icon at the top left and click on Settings. In the resulting window (Figure C), click Manage users.

Figure C

Odoo’s General Settings tab is where you take care of your initial configurations.

Click the Mitchel Admin listing, then click Edit. You can now edit the admin user name, add a photo, and manage access rights, preferences, and account security (Figure D).

Figure D

Customization of default admin user in Odoo.

Congratulations, you have a running CRM/ERP tool that can be extended to fill many roles for your business.

Subscribe to TechRepublic’s How To Make Tech Work on YouTube for all the latest tech tips for professionals from Jack Wallen.