Odoo是一个功能齐全、可扩展的开源ERP(企业资源计划)软件,使用Python和PostgreSQL数据库进行数据存储。当前最新版本是Odoo 17,包括了社区版(CE)和企业版(EE)。
实际上,Odoo是一套开源商业应用程序,包含网站、销售、财务、运营、制造、人力资源 (HR)、通信、营销和定制工具等不同类别的多个应用程序。
Odoo主要应用程序包括网站构建器、CRM(内容关系管理器)、功能齐全的电子商务、营销应用程序、人力资源应用程序、会计工具、库存应用程序、销售点应用程序、项目管理应用程序等。
在本文中,小编将简单介绍在Ubuntu 24.04、Ubuntu 22.04或Ubuntu 20.04系统安装最新Odoo社区版(CE)的简单步骤。
步骤1:在Ubuntu上安装PostgreSQL
要正确运行Odoo,需要一个PostgreSQL数据库服务器,它可以从默认存储库安装,命令如下:
sudo apt update sudo apt install postgresql
PostgreSQL安装完成后,需要检查几件事。在安装过程中,安装程序配置为启动postgresql服务并使其在服务器重新启动时自动启动。
要检查服务是否启动并正在运行且已启用,请运行以下systemctl命令:
sudo systemctl status postgresql sudo systemctl is-enabled postgresql
步骤2、在Ubuntu上安装Wkhtmltopdf
接下来,需要安装Wkhtmltopdf,它是一个开源的小型命令行实用程序,使用WebKit将HTML页面转换为PDF文档或图像。
Odoo需要wkhtmltopdf v0.12.05 ,但Ubuntu存储库中未提供该版本。因此,需要从wkhtmltopdf网站下载适用于Ubuntu版本的wkhtmltox.deb
包,然后手动安装它:
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 install -f
验证Wkhtmltopdf是否已成功安装在系统上:
which wkhtmltopdf which wkhtmltoimage
步骤3:在Ubuntu中安装Odoo
这里将使用官方Odoo存储库通过执行以下命令来安装Odoo社区版:
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/17.0/nightly/deb/ ./' | sudo tee /etc/apt/sources.list.d/odoo.list sudo apt-get update sudo apt install git wget python3 python3-pip postgresql build-essential wkhtmltopdf python3-dev python3-venv python3-wheel libxslt-dev libpq-dev libzip-dev libldap2-dev libsasl2-dev python3-setuptools node-less libjpeg-dev gdebi sudo apt-get install odoo
安装Odoo之后,可以验证服务是否启动并正在运行,并能够在系统启动时自动启动:
sudo systemctl status odoo sudo systemctl is-enabled odoo
默认情况下,Odoo监听端口8069 ,你可以使用netstat或ss工具进行验证,这是确认Odoo已启动并运行的另一种方法:
sudo netstat -tpln 或者 sudo ss -tpln
步骤4:安装并将Nginx配置为 Odoo的反向代理
为了让用户无需输入端口号即可访问Odoo Web界面,你可以将Odoo配置为使用Nginx反向代理环境通过子域进行访问。要将Nginx配置为Odoo反向代理,首先,需要按照所示安装Nginx:
sudo apt install nginx
安装完成后,检查Nginx服务是否启动并运行,包括系统启动时启动:
sudo systemctl status nginx sudo systemctl is-enabled nginx
接下来在文件/etc/nginx/conf.d/odoo.conf中为Odoo创建一个Nginx服务器块,命令如下:
sudo nano /etc/nginx/conf.d/odoo.conf
然后将以下配置复制并粘贴到文件中,这是一个足以运行Odoo系统的简单配置。当然,你也可以通过阅读Nginx文档来添加更多配置以适合你的环境。
server { listen 80; server_name odoo.tecmint.lan; access_log /var/log/nginx/odoo_access.log; error_log /var/log/nginx/odoo_error.log; proxy_buffers 16 64k; proxy_buffer_size 128k; location / { proxy_pass http://127.0.0.1:8069; proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; } location ~* /web/static/ { proxy_cache_valid 200 60m; proxy_buffering on; expires 864000; proxy_pass http://127.0.0.1:8069; } gzip on; gzip_min_length 1000; }
保存文件中的更改后,检查Nginx配置结构是否存在语法错误:
sudo nginx -t
现在重新启动Nginx服务以使最近的更改生效:
sudo systemctl restart nginx
重要的是,如果已启用并运行UFW防火墙服务,则需要在开始访问Odoo Web界面之前允许HTTP和HTTPS请求通过防火墙到达Nginx服务器:
sudo ufw allow http sudo ufw allow https sudo ufw reload
步骤5:访问Odoo Web管理界面
打开Web浏览器并使用以下地址访问OdooWeb管理界面:
http://服务器IP地址 或者 http://服务器主机名
等待界面加载,加载完成后,你需要为Odoo创建一个数据库,包括输入数据库名称、管理员电子邮件地址和密码。然后选择语言和国家/地区,同时你也可以选择是否加载示例数据,完成之后单击创建数据库:
这样上述页面将重定向到管理员的仪表板,显示可用的Odoo应用程序,如以下屏幕截图所示。单击应用程序上的“Install”或“Upgrade”按钮分别进行安装或升级。要注销登录,请单击“Admin”下拉菜单==> “Log out”选项:
以下屏幕截图显示了Odoo登录界面,也就是使用上面步骤中创建的凭据登录。
从截图中,你可以看到系统并不安全,因为它运行在纯HTTP上。所以,你需要启用HTTPS,尤其是在生产环境中。这里可以使用免费的Let’s Encrypt,教程可以自己在网上搜索。
小结
通过以上过程设置,现在已在Ubuntu服务器上安装了Odoo CE。尽管Odoo应用程序开箱即用,无缝集成,可提供完善的集成 ERP 解决方案,但每个应用程序都可以作为独立应用程序部署。如果想了解更多信息,请参阅Odoo文档。