AlmaLinuxLinuxTutorials

How To Install Odoo on AlmaLinux 8

Install Odoo on AlmaLinux 8

In this tutorial, we will show you how to install Odoo on AlmaLinux 8. For those of you who didn’t know, Odoo is a group of open-source business apps that offers a wide range of applications including, CRM, accounting, billing, inventory, warehouse, e-commerce, project management, and more. It is a web-based and fully-featured application that helps you to maintain the ERP in any business. Odoo comes with 30 core modules and more than 4500 community-created modules that help you to customize it from a small shop to an enterprise-level corporation.

This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of the Odoo customer relationship management software on an AlmaLinux 8.

Prerequisites

  • A server running one of the following operating systems: AlmaLinux 8.
  • It’s recommended that you use a fresh OS install to prevent any potential issues.
  • A non-root sudo user or access to the root user. We recommend acting as a non-root sudo user, however, as you can harm your system if you’re not careful when acting as the root.

Install Odoo on AlmaLinux 8

Step 1. First, let’s start by ensuring your system is up-to-date.

sudo dnf update
sudo dnf install epel-release

Step 2. Installing Required Dependencies.

Now we required dependencies on your server. You can install all of them with the following command:

sudo dnf install python3 python3-devel git gcc git redhat-rpm-config libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel

Step 3. Installing PostgreSQL database.

Run the following command to install the PostgreSQL package to your system:

sudo dnf install @postgresql:12

Next, initialized to PostgreSQL database with the following command:

/usr/bin/postgresql-setup initdb

After that, start the PostgreSQL service and enable them to start at system reboot:

sudo systemctl start postgresql
sudo systemctl enable postgresql

Then, create a new PostgreSQL user for Odoo with the following command below:

su - postgres -c "createuser -s odoo"

For additional resources on installing PostgreSQL, read the post below:

Step 4. Installing Odoo on AlmaLinux 8.

Now we create a dedicated user for Odoo:

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

Then, log in with the Odoo user and download the latest Odoo packages with the following command:

su - odoo
git clone https://www.github.com/odoo/odoo --depth 1 --branch 14.0 /opt/odoo/odoo14
cd /opt/odoo

Once done, change the directory to /opt/odoo and create a new Python virtual environment:

python3 -m venv odoo14-venv
source odoo14-venv/bin/activate

Then, install the required Python modules:

pip3 install -r odoo14/requirements.txt

After that, deactivate from the virtual environment and exit from the Odoo user with the following command below:

deactivate
exit

Next, create addons and log directory with the following command:

mkdir /opt/odoo/odoo14-custom-addons
mkdir /var/log/odoo14 && touch /var/log/odoo14/odoo.log

We will create a new directory for the custom modules and change its ownership to the ‘odoo’ user:

chown odoo: /opt/odoo/odoo14-custom-addons
chown -R odoo: /var/log/odoo14/

Step 5. Creating Odoo Configuration.

Now we create an Odoo configuration file which is located on the /etc/odoo.conf. The content of the configuration file is as follow :

nano /etc/odoo.conf

Add the following line:

[options]
admin_passwd = odoo_master_password
db_host = False
db_port = False
db_user = odoo
db_password = False
xmlrpc_port = 8069
logfile = /var/log/odoo14/odoo.log
logrotate = True
addons_path = /opt/odoo/odoo14/addons,/opt/odoo/odoo14-custom-addons

Save and close the file when you are finished.

Step 6. Create a Systemd Service file for Odoo.

Now create an Odoo systemd unit file by creating a new file /etc/systemd/system/odoo.service:

nano /etc/systemd/system/odoo.service

Add the following lines:

[Unit]
Description=Odoo14
#Requires=postgresql-10.6.service
#After=network.target postgresql-10.6.service

[Service]
Type=simple
SyslogIdentifier=odoo14
PermissionsStartOnly=true
User=odoo
Group=odoo
ExecStart=/opt/odoo/odoo14-venv/bin/python3 /opt/odoo/odoo14/odoo-bin -c /etc/odoo.conf
StandardOutput=journal+console

[Install]
WantedBy=multi-user.target

Save and close the file. Then, reload the systemd daemon with the following command:

sudo systemctl daemon-reload
sudo systemctl start odoo
sudo systemctl enable odoo

Step 7. Configure Firewall for Odoo.

For Odoo to be accessible on a browser, open the port across the firewall.

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --zone=public --permanent --add-port=8069/tcp
firewall-cmd --reload

Step 8. Accessing Odoo Web Interface

Once successfully installed, now open your web browser and access the Odoo web UI using the URL http://your-server-ip-address:8069. You should see the following page:

Install Odoo on AlmaLinux 8

Congratulations! You have successfully installed Odoo. Thanks for using this tutorial for installing the Odoo business management software on your AlmaLinux 8 system. For additional help or useful information, we recommend you check the official Odoo website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!

r00t

r00t is a seasoned Linux system administrator with a wealth of experience in the field. Known for his contributions to idroot.us, r00t has authored numerous tutorials and guides, helping users navigate the complexities of Linux systems. His expertise spans across various Linux distributions, including Ubuntu, CentOS, and Debian. r00t's work is characterized by his ability to simplify complex concepts, making Linux more accessible to users of all skill levels. His dedication to the Linux community and his commitment to sharing knowledge makes him a respected figure in the field.
Back to top button