在本系列文件第一章使用開發者模式快速入門 Odoo 12 中,我們介紹了快速運行 Odoo 的各種方式,本文中我們將更深入一步,直接通過源碼來安裝、運行 Odoo。
Odoo 使用 Python 編程語言,數據存儲使用 PostgreSQL 數據庫,這是對 Odoo 主機的兩大要求。要使用源碼運行 Odoo,首先要安裝其所依賴的 Python 庫。 然后從 GitHub 上下載源代碼,雖然可以下載 zip 和 tar 文件,但使用 Git 版本管理工具獲取代碼會更優。
“ 注意: 具體依賴的安裝根據操作系統和安裝的 Odoo 版本可能會不同。如果在上述步驟中存在問題,請參考官方文檔,可切換版本查看其它版本的操作步驟。 ”
安裝 PostgreSQL 數據庫
Odoo 要使用到 PostgreSQL 服務,典型的開發設置是使用安裝 Odoo 的同一台機器安PostgreSQL。下面我們就來安裝數據庫服務:
sudo apt update
sudo apt install postgresql -y # 安裝 PostgreSQL
sudo su -c "createuser -s $USER" postgres # 創建數據庫超級用戶
最后這條命令為當前系統用戶創建了一個 PostgreSQL 用戶,用於 Odoo 實例創建或刪除數據
庫時使用。
如果在 WSL 內運行 Ubuntu,注意系統服務不會自動啟動。也就是說運行任何需要數據庫連接的命令(如 createuser 或啟動 Odoo 服務)時都要手動開啟 PostgreSQL 服務,手動啟動PostgreSQL 服務執行: sudo service postgresql start。
安裝 Odoo 系統依賴
要運行 Odoo,我們還需要一些系統包和軟件。獲取版本控制的源碼應安裝 Git,安裝運行Odoo 要求 Python 3.5 或之后的版本、 Python 3 的 pip 以及一些 Python 包的系統依賴:
sudo apt update
sudo apt upgrade
sudo apt install git -y # 安裝 Git
sudo apt install python3-dev python3-pip -y # Python 3 for dev
sudo apt install build-essential libxslt-dev libzip-dev libldap2-dev libsasl2-
dev libssl-dev -y
Odoo 9, 10, 11 版要用到 less CSS 預處理器,所以對這些版本需要執行如下安裝:
sudo apt install npm # 安裝 Node.js 和包管理器
sudo ln -s /usr/bin/nodejs /usr/bin/node # 通過 node 運行 Node.js
sudo npm install -g less less-plugin-clean-css # 安裝 less
Odoo 12 中無需執行如上命令,但通常我們也會用到前述版本,如果有此情況則仍需安裝。
“ 注意: Odoo 12 的修改CSS 預處理器由 less 改成了 Sass, Sass 編譯器無需進行額外安裝,在 Odoo 12 的Python 依賴中已經安裝了 libsass-python。做出這一更改的原因有: Bootstrap 4 由 less 調整為 Sass,已有 Python 綁定和避免對 Node.js(或 Ruby)的依賴。 ”