Knowledge Base
0%
Advanced ~60 min sudo required

Install Odoo 17 on Ubuntu 22

Full Odoo 17 deployment with PostgreSQL, Python venv, systemd service, and Apache reverse proxy.

0 / 12 done

Prerequisites

  • Ubuntu 22.04 server with at least 2 GB RAM
  • PostgreSQL knowledge helpful
1
Step 1 Snippet

Update Ubuntu system packages


                            
2
Step 2 Command

Install Odoo dependencies

sudo apt install -y git wget nodejs npm python3 build-essential libzip-dev python3-dev libxslt1-dev python3-pip libldap2-dev python3-wheel libsasl2-dev python3-venv python3-setuptools node-less libjpeg-dev xfonts-75dpi xfonts-base libpq-dev libffi-dev fontconfig
3
Step 3 Command

Install wkhtmltopdf and rtlcss

sudo npm install -g rtlcss
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-2/wkhtmltox_0.12.6.1-2.jammy_amd64.deb
sudo dpkg -i wkhtmltox_0.12.6.1-2.jammy_amd64.deb
4
Step 4 Command

Create odoo system user and install PostgreSQL

sudo adduser --system --group --home=/opt/odoo --shell=/bin/bash odoo
sudo apt install -y postgresql
sudo systemctl enable --now postgresql
sudo su - postgres -c "createuser -s odoo"
5
Step 5 Command

Clone Odoo 17 and install Python requirements

cd /opt/odoo
sudo -u odoo git clone https://github.com/odoo/odoo.git --depth 1 --branch 17.0 --single-branch odoo-server
cd /opt/odoo/odoo-server
sudo -u odoo python3 -m venv venv
sudo -u odoo bash -c 'source venv/bin/activate && pip3 install wheel && pip3 install -r requirements.txt'
6
Step 6 Command

Create /etc/odoo-server.conf

sudo mkdir -p /var/log/odoo && sudo chown odoo:odoo /var/log/odoo
sudo tee /etc/odoo-server.conf > /dev/null <<'EOF'
[options]
admin_passwd = ChangeMe_Strong_Master_Password
db_user = odoo
addons_path = /opt/odoo/odoo-server/addons
logfile = /var/log/odoo/odoo-server.log
log_level = info
EOF
sudo chown odoo:odoo /etc/odoo-server.conf
sudo chmod 640 /etc/odoo-server.conf
7
Step 7 Snippet

Create systemd service unit


                            
8
Step 8 Command

Allow port 8069 in firewall

sudo ufw allow 8069
9
Step 9 Snippet

Install Apache HTTP Server


                            
10
Step 10 Snippet

Apache reverse proxy to local app


                            
11
Step 11 Snippet

Install Certbot for Apache


                            
12
Step 12 Snippet

Issue SSL certificate via Certbot (Apache)