How To

Install Odoo 19 on Ubuntu 24.04 Like a Pro

Businesses looking for an all-in-one ERP platform often choose Odoo because of its flexibility and massive feature set. In this guide, you’ll learn how to Install Odoo 19 on Ubuntu 24.04 using a production-ready setup with PostgreSQL, Python virtual environments, and Nginx reverse proxy integration.

Odoo 19 delivers tools for CRM, accounting, inventory, HR, project management, e-commerce, and more. Running it on Ubuntu 24.04 provides better stability, updated security packages, and long-term support for enterprise deployments.

Why Install Odoo 19 on Ubuntu 24.04

Ubuntu 24.04 is an excellent platform for Odoo deployments because it includes modern packages, improved security features, and strong community support. Combined with PostgreSQL and Nginx, it creates a reliable ERP environment suitable for startups and enterprise workloads alike.

Before starting, ensure your server has:

  • Ubuntu 24.04 installed
  • At least 2 GB RAM
  • Sudo privileges
  • Python 3.10+
  • PostgreSQL
  • A domain name for HTTPS configuration

Install Odoo 19 Dependencies

The first step to Install Odoo 19 is preparing the server with required development libraries and tools.

Update the package index:

sudo apt update

Install required packages:

sudo apt install git python3-venv python3-pip build-essential wget \python3-dev libpq-dev libxml2-dev libxslt1-dev zlib1g-dev \libsasl2-dev libldap2-dev libjpeg-dev

Next, install Node.js and rtlcss for frontend asset processing:

curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -sudo apt install nodejssudo npm install -g rtlcss

Configure PostgreSQL for Odoo

Odoo relies on PostgreSQL as its database backend. Install PostgreSQL using:

sudo apt install postgresql

Create a dedicated database user:

sudo su - postgres -c "createuser -R -S -D odoo19"

This user will later connect Odoo to the database securely.

Install Odoo 19 in a Virtual Environment

Using a Python virtual environment keeps dependencies isolated and simplifies upgrades.

Create a system user:

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

Switch to the new user:

sudo su - odoo19

Clone the Odoo 19 source code:

git clone https://www.github.com/odoo/odoo --depth 1 --branch 19.0 /opt/odoo19/odoo

Create and activate a virtual environment:

python3 -m venv /opt/odoo19/odoo-venvsource /opt/odoo19/odoo-venv/bin/activate

Install Python requirements:

pip3 install wheelpip3 install -r /opt/odoo19/odoo/requirements.txt

Deactivate the environment after installation:

deactivate

Secure Install Odoo 19 With Nginx

For production environments, Nginx should handle HTTPS connections and reverse proxy traffic to Odoo.

Install Nginx:

sudo apt install nginx

Configure a reverse proxy and enable SSL certificates using Let’s Encrypt. This setup improves performance, security, and scalability while protecting user sessions with HTTPS encryption.

You should also block direct public access to port 8069 using UFW:

sudo ufw allow 80/tcpsudo ufw allow 443/tcpsudo ufw deny 8069/tcp

Optimize Odoo for Production

Production deployments benefit from multiprocessing mode. Configure worker processes based on server CPU cores and available RAM.

Add optimized worker settings inside the Odoo configuration file:

workers = 5limit_time_cpu = 600limit_time_real = 1200

Finally, restart the service:

sudo systemctl restart odoo19

Conclusion

Learning how to Install Odoo 19 on Ubuntu 24.04 helps businesses build a stable and scalable ERP environment for daily operations. By combining PostgreSQL, Python virtual environments, Nginx, and SSL protection, you create a production-ready deployment that is secure, fast, and easier to maintain over time.

Cyber Defence

Recent Posts

Bash Scripting Best Practices Every Beginner Should Know

Introduction Bash scripting is a powerful way to automate Linux tasks, but writing a script…

16 hours ago

How To Create A Self-Signed SSL Certificate Using Bash And OpenSSL

Introduction A self-signed SSL certificate is a certificate that is created and signed by the…

17 hours ago

How To Debug Bash Scripts Using bash -x And set Commands

Introduction Debugging is an important part of Bash scripting. When a script does not work…

21 hours ago

How To Use Cron Jobs With Bash Scripts For Automation

Introduction Cron jobs are used in Linux to run commands or Bash scripts automatically at…

22 hours ago

How To Use Pipes In Bash Scripts For Command Chaining

Introduction Pipes are an important feature in Linux and Bash scripting. A pipe allows you…

23 hours ago

How To Use grep, awk, And sed In Bash Scripts

Introduction The grep, awk, and sed commands are powerful text-processing tools in Linux. They are…

1 day ago