Ubuntu20.04.3以源码方式安装Odoo14 社区版

Odoo是流行的开源商务应用程序套件,可帮助公司管理和运营其业务。它包括广泛的应用程序,例如CRM,电子商务,网站构建器,计费,会计,制造,仓库,项目管理,库存等等,所有这些都无缝集成。

建议使用Debian/Ubuntu系统作为ODOO服务器。你还可以在自己喜欢的桌面系统如Windows, Mac, or Linux上工作。

ODOO可以在各种操作系统上运行,但是Debian/Ubuntu系统是ODOO团队的参考部署平台,具有最好的支持。如果使用Debian/Ubuntu操作系统,将会更容易获取帮助及更多资源。

Debian/Ubuntu也是大部分开发人员使用的平台,同时连带一些部署工作在该平台上。所以,自然地,预期ODOO的开发人员也可以轻松使用Debian/Ubuntu平台。即使您已具有Windows背景知识,掌握了解一些Debian/Ubuntu知识仍将非常重要。

有多种方法可以安装Odoo,比如在线,打包安装程序,源安装,Docker等多种安装选项。
可以参考odoo官方文档选择合适的安装方式

这里演示在Ubuntu20.04.3以源码方式安装Odoo14 社区版。

1.安装Git,Pip,Node.js和所需依赖

sudo apt update
sudo apt install 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 zlib1g-dev libpq-dev

2.创建系统用户

不允许在root用户下运行Odoo,因为这存在安全风险。我们将使用主目录创建一个新的系统用户和组/opt/odoo14,以运行Odoo服务。为此,请输入以下命令:

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

注意:可以使用任意名称为用户命名,此处为odoo14,只要创建具有相同名称的PostgreSQL用户即可。

3 .安装和配置PostgresSQL

Odoo使用PostgreSQL作为数据库后端。PostgreSQL包含在标准Ubuntu存储库中。要安装它,请运行:

sudo apt install postgresql

查看PostgreSQL版本,此处安装的是PostgreSQL 12

安装完成后,创建一个与先前创建的系统用户同名的PostgreSQL用户。在此示例中,即odoo14:

su postgres		
psql
# 创建数据库用户odoo14
postgres=# create user odoo14 with password ‘123456’;
CREATE 
# 创建用户数据库odoo14_db
postgres=# create database odoo14_db owner odoo14;     
CREATE DATABASE
# 将odoo14_db数据库的所有权限都赋予odoo14,否则odoo14只能登录控制台,没有任何数据库操作权限。
postgres=# grant all privileges on database odoo to odoo14;
GRANT
postgres=# \l        # 查看数据库是否创建成功

4.安装wkhtmltopdf

wkhtmltopdf是用于将HTML页面呈现为PDF和各种图像格式的一组开源命令行工具。要在Odoo中打印PDF报告,您需要安装该wkhtmltox软件包。Odoo的推荐版本是version 0.12.5,可以从Github下载:

sudo wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.bionic_amd64.deb

下载文件后,请输入以下内容进行安装:

sudo apt install ./wkhtmltox_0.12.6-1.bionic_amd64.deb

5.安装和配置Odoo14

这里使用源安装(git),提供更大的灵活性:例如,允许在同一系统上运行多个Odoo版本。适合开发模块,可作为生产部署的基础。

我们将从一个隔离的Python虚拟环境中的源代码安装Odoo 。

首先,切换为用户“ odoo14”:

sudo su - odoo14

从GitHub克隆Odoo 14源代码:

git clone https://www.github.com/odoo/odoo --depth 1 --branch 14.0 /opt/odoo14/odoo

为Odoo创建新的Python虚拟环境(odoo-venv):

cd /opt/odoo14   
python3 -m venv odoo-venv

如果要删除虚拟环境,只需要删除它的文件夹(执行 rm -rf odoo-venv)

激活虚拟环境:

source odoo-venv/bin/activate

使用pip3安装所有必需的Python模块:

pip3 install wheel 
pip3 install -r odoo/requirements.txt  #(requirements.txt在 目录 opt/odoo14/odoo内)

完成后,通过键入以下命令停用环境:

deactivate

创建一个日志目录:

mkdir /var/log/odoo
chown odoo14:odoo14 /var/log/odoo        # 授权

创建一个包含第三方插件的新目录:

mkdir /opt/odoo14/odoo-custom-addons

稍后,我们将这个目录添加到addons_path参数中。此参数定义Odoo在其中搜索模块的目录列表。

切换回sudo用户:

exit

创建具有以下内容的配置文件:

sudo nano /etc/odoo14.conf

复制以下内容到/etc/odoo14.conf

[options]
; This is the password that allows database operations:
admin_passwd = my_admin_passwd
db_host = False
db_port = False
db_name = odoo14_db
db_user = odoo14
db_password = 123456
logfile = /var/log/odoo/odoo14.log
addons_path = /opt/odoo14/odoo/addons,/opt/odoo14/odoo-custom-addons

不要忘记将更my_admin_passwd改为更安全的内容.
退出nano模式:Ctrl+x,选择yes即可退出。

6.创建系统单位文件

打开文本编辑器并创建一个服务单元文件odoo14.service,其内容如下:

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

odoo14.service内容如下:

[Unit]
Description=Odoo14
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo14
PermissionsStartOnly=true
User=odoo14
Group=odoo14
ExecStart=/opt/odoo14/odoo-venv/bin/python3 /opt/odoo14/odoo/odoo-bin -c /etc/odoo14.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target

通知systemd一个新的单位文件存在:

sudo systemctl daemon-reload

首次运行odoo:

# 进入虚拟环境
source /opt/odoo14/odoo-venv/bin/activate
(odoo-venv)# python3 /opt/odoo14/odoo/odoo-bin -c /etc/odoo14.conf -i base
#如果弹出缺失包,就用pip3 install安装相关包。比如缺少dateutil,就执行如下命令:
# pip3 install python-dateutil

运行odoo,启动Odoo服务,并通过运行以下命令使其在启动时启动:

systemctl start odoo14
sudo systemctl enable --now odoo14
# 停止odoo服务命令:# systemctl stop odoo14

验证服务状态:

sudo systemctl status odoo14

输出应如下所示,表明Odoo服务处于活动状态并正在运行。

● odoo14.service - Odoo14
Loaded: loaded (/etc/systemd/system/odoo14.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2020-10-16 19:05:32 UTC; 3s ago

退出:Esc :wq
要查看Odoo服务记录的消息,请使用以下命令:

sudo journalctl -u odoo14

7.测试安装

打开浏览器并输入: http://:8069
可以通过命令ifconfig查看IP地址,也可以使用hostname来查看服务器的名称(我的是ubuntu-yoke)

如果配置了连接PgSQL数据库odoo14_db,则出现以下界面:
Ubuntu20.04.3以源码方式安装Odoo14 社区版_第1张图片

如果未连接数据库,将显示以下界面:Ubuntu20.04.3以源码方式安装Odoo14 社区版_第2张图片
至此安装成功!

默认用户名及密码均为:admin。登录后请即时修改密码。
请注意:Odoo使用werkzeug作为 web 服务的框架,但werkzeug不是专门的web服务器,并发能力不行。可利用nginx作个前端,反向代理http://127.0.0.1:8069

在Ubuntu安装Nginx

你可能感兴趣的:(odoo,postgresql,数据库)