How to Install Odoo: Step-by-Step Guide (Docker, Ubuntu, Windows)
Complete guide to Odoo installation: Docker setup in 10 minutes, Ubuntu server installation, and Windows options. Including troubleshooting tips.

How to Install Odoo: Step-by-Step Guide (Docker, Ubuntu, Windows)
Want to install Odoo yourself? Here are three methods - from quick Docker setup to production-ready server installation.
Table of Contents
- Which Installation Method?
- Option 1: Docker (Recommended for Beginners)
- Option 2: Ubuntu Server (Production)
- Option 3: Windows (Development)
- After Installation
- Common Problems
Which Installation Method?
| Method | Time | For Whom? | Production? |
|---|---|---|---|
| Docker | 10 min | Beginners, testing | ⚠️ Possible |
| Ubuntu | 30-60 min | Admins | ✅ Yes |
| Windows | 15 min | Developers | ❌ No |
| Odoo.sh | 5 min | Businesses | ✅ Yes |
Option 1: Docker Installation (Fastest Way)
Prerequisites
- Docker installed (docker.com)
- Docker Compose installed
- 4 GB RAM minimum
Step 1: Create Docker Compose File
Create a file docker-compose.yml:
version: '3.8' services: odoo: image: odoo:17.0 depends_on: - db ports: - "8069:8069" volumes: - odoo-web-data:/var/lib/odoo - ./config:/etc/odoo - ./addons:/mnt/extra-addons environment: - HOST=db - USER=odoo - PASSWORD=odoo db: image: postgres:15 environment: - POSTGRES_DB=postgres - POSTGRES_PASSWORD=odoo - POSTGRES_USER=odoo volumes: - odoo-db-data:/var/lib/postgresql/data volumes: odoo-web-data: odoo-db-data:
Step 2: Start
docker-compose up -d
Step 3: Access
Open in browser: http://localhost:8069
You'll see the Odoo setup wizard. Create your first database.
Docker Commands for Daily Use
# Stop docker-compose down # View logs docker-compose logs -f odoo # Restart docker-compose restart odoo # Update to new version docker-compose pull docker-compose up -d
Option 2: Ubuntu Server Installation (Production)
Prerequisites
- Ubuntu 22.04 LTS Server
- Root access or sudo
- Domain (optional, for SSL)
Step 1: Prepare System
sudo apt update && sudo apt upgrade -y sudo apt install -y git python3-pip build-essential wget \ python3-dev python3-venv python3-wheel libxslt-dev \ libzip-dev libldap2-dev libsasl2-dev python3-setuptools \ node-less libjpeg-dev gdebi libpq-dev
Step 2: Install PostgreSQL
sudo apt install -y postgresql # Create Odoo user sudo -u postgres createuser -s odoo
Step 3: Install wkhtmltopdf (for PDF reports)
sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-2/wkhtmltox_0.12.6.1-2.jammy_amd64.deb sudo apt install -y ./wkhtmltox_0.12.6.1-2.jammy_amd64.deb
Step 4: Create Odoo User
sudo useradd -m -d /opt/odoo -U -r -s /bin/bash odoo
Step 5: Download Odoo
sudo -u odoo git clone https://www.github.com/odoo/odoo --depth 1 --branch 17.0 /opt/odoo/odoo
Step 6: Set Up Python Environment
sudo -u odoo python3 -m venv /opt/odoo/venv sudo -u odoo /opt/odoo/venv/bin/pip install wheel sudo -u odoo /opt/odoo/venv/bin/pip install -r /opt/odoo/odoo/requirements.txt
Step 7: Create Configuration File
sudo nano /etc/odoo.conf
Content:
[options] admin_passwd = YOUR_MASTER_PASSWORD db_host = False db_port = False db_user = odoo db_password = False addons_path = /opt/odoo/odoo/addons logfile = /var/log/odoo/odoo.log
Step 8: Create Systemd Service
sudo nano /etc/systemd/system/odoo.service
Content:
[Unit] Description=Odoo After=network.target postgresql.service [Service] Type=simple SyslogIdentifier=odoo PermissionsStartOnly=true User=odoo Group=odoo ExecStart=/opt/odoo/venv/bin/python3 /opt/odoo/odoo/odoo-bin -c /etc/odoo.conf StandardOutput=journal+console [Install] WantedBy=multi-user.target
Step 9: Start
sudo mkdir /var/log/odoo sudo chown odoo:odoo /var/log/odoo sudo systemctl daemon-reload sudo systemctl enable odoo sudo systemctl start odoo
Step 10: Access
Open: http://YOUR_SERVER_IP:8069
Option 3: Windows Installation (Development)
Step 1: Download Installer
Download the official Windows installer: https://nightly.odoo.com/17.0/nightly/exe/
Step 2: Install
- Double-click the .exe
- PostgreSQL will be installed automatically
- Choose installation path (default: C:\Program Files\Odoo)
Step 3: Start
After installation you'll find:
- Odoo Service in Windows Services
- http://localhost:8069 for access
Note
Windows installation is only suitable for development - not for production!
After Installation
Create First Database
- Open http://localhost:8069 (or your server IP)
- Click "Manage Databases"
- Set master password
- Create new database with:
- Database name
- Password
- Language
- Country
Install Important Apps
After login:
- Go to Apps
- Install as needed:
- CRM
- Sales
- Purchase
- Inventory
- Accounting
- HR
Set Up Backup
# Manual backup (PostgreSQL) pg_dump -U odoo DATABASENAME > backup.sql # Automatic backup (cron) 0 2 * * * pg_dump -U odoo DATABASENAME > /backup/odoo_$(date +\%Y\%m\%d).sql
Common Problems
Problem: Port 8069 Not Reachable
Solution:
# Check firewall sudo ufw allow 8069/tcp # Check service status sudo systemctl status odoo
Problem: PostgreSQL Connection Failed
Solution:
# Restart PostgreSQL sudo systemctl restart postgresql # Check user sudo -u postgres psql -c "\du"
Problem: Python Dependencies Missing
Solution:
# Reinstall requirements /opt/odoo/venv/bin/pip install -r /opt/odoo/odoo/requirements.txt
Problem: wkhtmltopdf PDF Error
Solution:
# Check correct version wkhtmltopdf --version # Should be 0.12.6 (with patched qt)
Next Steps
You've installed Odoo - what now?
- Activate modules - Start with CRM or Sales
- Create users - Assign roles and permissions
- Import data - Customers, products, etc.
- Customize - Fields, workflows, reports
Need Help?
Installation is the easy part - configuration determines success.
At Balane Tech, we implement Odoo for mid-size businesses: From strategy to go-live. Free consultation



