1. Preparation
- Log in to your server (it is recommended to use a stable version of Ubuntu or Debian).
- Ensure you have a user with sudo privileges.
-
Update system:
sudo apt update && sudo apt upgrade -y
-
Install PostgreSQL (database service is required for Odoo). For example, on Debian/Ubuntu:
sudo apt install postgresql -y ```
- Confirm that the PostgreSQL service is enabled and running.
Tip: In a production environment, it is recommended to use SSD storage, at least 20 GB (for testing) or more (for production), and ensure sufficient server resources (CPU, memory).
2. Add Odoo Repository & Install Odoo Package
-
Import Odoo's repository key and add the Odoo repository to the system:
wget -q -O - https://nightly.odoo.com/odoo.key | sudo gpg --dearmor -o /usr/share/keyrings/odoo-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/odoo-archive-keyring.gpg] https://nightly.odoo.com/19.0/nightly/deb/ ./" | sudo tee /etc/apt/sources.list.d/odoo.list sudo apt update ``` :contentReference[oaicite:4]{index=4} -
Install Odoo:
sudo apt install odoo
This will install the Odoo Community version. If you have the Enterprise version, you need to download the Enterprise package through an authorized account.
3. Initial Configuration
- Install wkhtmltopdf (used for generating PDF reports with header and footer support) Note: A specific version (e.g., 0.12.6) must be installed to ensure proper functionality.
- Configure PostgreSQL: Ensure Odoo can connect to the database. If PostgreSQL is on the same host as Odoo, the default "localhost" is sufficient. For distributed deployment, you need to modify PostgreSQL's listening configuration and firewall rules.
- Edit the Odoo configuration file (such as /etc/odoo/odoo.conf or /etc/odoo.conf, depending on the installation package) for basic settings. For example, specify the user, log path, addons path, etc.
-
Start Odoo service and set it to auto-start on boot:
sudo systemctl start odoo sudo systemctl enable odoo
- Access the browser and enter: http://your_server_IP:8069 (default port 8069) to enter Odoo.
4. Production Environment Recommendations (Optional but Strongly Recommended)
- Set up a reverse proxy (such as Nginx) and configure HTTPS (with certificates like Let’s Encrypt).
- Set dbfilter in the configuration file to control multi-database environments and enhance security.
- Prohibit database list page access (--no-database-list parameter) to enhance security.
- Regularly back up the PostgreSQL database and Odoo files.
- Restrict open ports on the firewall (typically only 8069, 80/443, and database ports when necessary) and monitor logs.
5. Quick Summary
- Installation process: Prepare → Install PostgreSQL → Add Odoo repository → Install Odoo package → Configure and start the service.
- Notes: wkhtmltopdf version, PostgreSQL configuration, security settings (dbfilter, reverse proxy, HTTPS) are key.
- The official documentation clearly states that the packaging method is suitable for most users, in situations where source code development or high customization is not pursued.
