Ubuntu通過源碼安裝Odoo16


Odoo16需要Python3.8支持,否則有些功能可能有所限制

第一步:安裝Python和依賴包

sudo apt-get update
sudo apt-get install openssh-server fail2ban
sudo apt-get install -y python3-pip
sudo apt install git python3-pip build-essential wget python3-dev python3-venv \
     python3-wheel libfreetype6-dev libxml2-dev libzip-dev libldap2-dev libsasl2-dev \
     python3-setuptools node- less libjpeg-dev zlib1g-dev libpq-dev \
     libxslt1-dev libldap2-dev libtiff5-dev libjpeg8-dev libopenjp2-7-dev \
     liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev libxcb1-dev

 Python 依賴安裝好之后,還需要安裝一些前端所需的依賴包:

sudo apt-get install -y npm
sudo ln -s /usr/bin/nodejs /usr/bin/node
sudo npm install -g less less-plugin-clean-css
sudo apt-get install -y node-less

  

通過網上搜到的往往有兩個坑:

  1. Package ‘libmysqlclient-dev’ has no installation candidate 使用default-libmysqlclient-dev來代替
  2. libjpeg8-dev和libjpeg-dev沖突,導致無法安裝,選一個就好,ITGeeker技術奇客用的libjpeg8-dev包

第二步:安裝 PostgreSQL 數據庫

PostgreSQL用12或者13版本都沒問題,有些自帶11的問題也不大

sudo apt-get install postgresql  #安裝數據庫

創建數據庫用戶

sudo su - postgres -c "createuser -s odoo"
psql
\q
exit

此步可以跳過。讓odoo成為Postgresql的超級用戶,否則啟動的時候會有個錯誤提示,不知道是不是新版本的bug

sudo -u postgres psql

ALTER USER odoo WITH SUPERUSER;

第三步:給系統添加一個odoo的用戶用於運行

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

###sudo adduser --system --home=/opt/odoo --group odoo
 為創建的用戶帳戶設置密碼

#sudo passwd odoo
Changing password for user odoo.
New password:輸入自己設置的密碼
Retype new password:再次輸入自己設置的密碼
passwd: all authentication tokens updated successfully.

第四步:獲取odoo的源代碼

代碼可以根據自己的渠道獲取

第五步:安裝Python的工具包

此處建議使用python venv環境來運行,這樣你的系統如果要使用其它python包的時候不會有沖突,可保持系統穩定運行。

sudo su - odoo
cd /opt/odoo
python3 -m venv odoo-venv
source odoo-venv/bin/activate
python -m pip install --upgrade pip
先把pip3切換到阿里源:
  1. mkdir ~/.pip

    vi ~/.pip/pip.conf

    # 然后將下面這兩行復制進去就好了

    [global]

    index-url = https://mirrors.aliyun.com/pypi/simple



pip install wheel
pip install --upgrade pip
pip install setuptools --upgrade

pip3 install -r /opt/odoo/requirements.txt

 

 

成功安裝后,停用虛擬環境,

$deactivate
$exit

創建Odoo日志文件:

sudo touch /var/log/odoo/odoo.log

設置正確的目錄權限:

sudo chown -R odoo:odoo /opt/odoo/ /var/log/odoo/odoo.log

 

如果安裝速度太慢,那就采用鏡像加速的方式來安裝吧:

國內PIP安裝加速 臨時和永久設置鏡像的方法

 

第六步:安裝Wkhtmltopdf

Odoo打印PDF報告都要用到這個模塊,如果直接安裝版本太低,就下載到本地安裝。

cd /tmp && sudo wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb
sudo apt install -f
#直接安裝
sudo apt install wkhtmltopdf

第七步:創建conf文件

sudo cp /opt/odoo/odoo_source/debian/odoo.conf /etc/odoo.conf
sudo nano /etc/odoo.conf

添加配置內容

[options]
   ; This is the password that allows database operations:
   admin_passwd = admin
   db_host = False
   db_port = False
   db_user = odoo
   db_password = False
   addons_path = /opt/odoo/odoo/addons
   logfile = /var/log/odoo/odoo.log

更改權限

sudo chown odoo: /etc/odoo.conf
sudo chmod 640 /etc/odoo.conf

 

第八步:odoo服務文件

sudo nano /etc/systemd/system/odoo.service

添加內容

[Unit]
Description=odoo
Documentation=https://www.geekercloud.com
[Service]
# Ubuntu/Debian convention:
Type=simple
User=odoo
#ExecStart=/opt/odoo/odoo_source/odoo-bin -c /etc/odoo.conf
ExecStart=/opt/odoo/odoo_venv/bin/python3 /opt/odoo/odoo_source/odoo-bin -c /etc/odoo.conf
[Install]
WantedBy=default.target

調整權限

sudo chmod 755 /etc/systemd/system/odoo.service && sudo chown root: /etc/systemd/system/odoo.service

 

第十步:查看日志Log

sudo tail -f /var/log/odoo/odoo.log

----------

 重新加載系統服務:

sudo systemctl daemon-reload

啟動創建的odoo服務。

sudo systemctl start odoo
sudo systemctl restart odoo

使它在啟動時啟動。

$ sudo systemctl enable odoo
Created symlink /etc/systemd/system/multi-user.target.wants/odoo.service → /etc/systemd/system/odoo.service.

確認Odoo服務是否設置為在啟動時啟動。

$ systemctl is-enabled odoo
enabled

檢查是否正在運行。

$ systemctl status odoo

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM