虽然odoo17已经在10月份发布了,但笔者并不愿意立时升级:一方面没有迫切的需要去升级,仿佛没有odoo17就没法后续的工作一样;另一方面,我倒是更希望在双数版本发布的时候再升级。为此继续使用odoo16,也记录下odoo16在ubuntu服务器上的安装过程。

下载odoo16源码

1.下载源码可以通过以下3种途径:

Download | Odoo

https://github.com/odoo/odoo

Odoo Nightly builds

2.通常我们使用git进行源码克隆,检查是否已安装git:

#检查是否安装git
git --version
#如果没有安装则执行安装操作
sudo apt-get install git

3.如果已经安装,则切换到你想要的源码克隆路径,执行以下命令:

#--branch 16.0 指定要克隆的分支,这里是 Odoo 16 的分支。
#--single-branch 表示只克隆指定的分支,这可以帮助减少克隆的数据量。
#https://www.github.com/odoo/odoo.git 是 Odoo 代码库的 HTTPS 克隆 URL。
#odoo16 是本地目录的名称,你可以根据需要修改。
git clone --branch 16.0 --single-branch https://www.github.com/odoo/odoo.git odoo16

Python环境

 1.Odoo16需要 Python 3.7 或更高版本才能运行,检查是否已安装:

#检查python版本
python3 --version
#验证此版本是否安装了php
pip3 --version

2.如果没有安装则执行以下命令进行安装:

sudo apt-get install -y python3-pip

PostgreSQL数据库

1.下载与安装:

sudo apt install postgresql postgresql-client

 2.安装过程中会创建默认的用户postgres,由于Odoo禁止使用 postgres 连接,所以需要创建一个新的PostgreSQL用户:

#1.切换到postgres用户
su postgres
#2.创建odoo16用户
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo16
#3.给用户授权
psql
ALTER USER odoo16 WITH SUPERUSER;
#4.退出
exit

3.修改postgresql配置文件:

vi /etc/postgresql/14/main/pg_hba.conf
#将本地用户连接方法由peer改为md5
# "local" is for Unix domain socket connections only
local   all             all                                     md5

4.重新启动postgresql服务:

service postgresql restart

安装依赖项

1.软件包在Odoo源代码的 debian/control文件中列出,执行以下命令安装:

cd /odoo源码路径
#执行安装命令
sed -n -e '/^Depends:/,/^Pre/ s/ python3-\(.*\),/python3-\1/p' debian/control | sudo xargs apt-get install -y

安装wkhtmltopdf 

1.在 Odoo 中wkhtmltopdf是用于将 HTML 转换为 PDF 的工具,通常用于报表生成等任务。

2.到 wkhtmltopdf 下载对应操作系统版本的安装包,然后安装。

3.以ubuntu22.04为例的安装命令:

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
sudo apt-get -f install

4.检查是否安装成功:

wkhtmltopdf --version

配置并启动odoo16

1.在源码根目录中创建配置文件odoo.conf:

[options]
; This is the password that allows database operations:
admin_passwd = ******
db_host = False
db_port = False
db_user = odoo16
db_password = ******
addons_path = /opt/odoo16/test/odoo/addons/,/opt/odoo16/test/addons/,/opt/odoo16/test/custom_addons/
http_port = 8000
default_productivity_apps = True

2.启动odoo16:

python3  /opt/odoo16/test/odoo-bin -c /opt/odoo16/test/odoo.conf

3.在浏览器种通过ip地址和端口号访问站点:

乌班图iostatus 乌班图安装步骤_乌班图iostatus