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

下载odoo16源码

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

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

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

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

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

Python环境

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

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

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

1 sudo apt-get install -y python3-pip

PostgreSQL数据库

1.下载与安装:

1 sudo apt install postgresql postgresql-client

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

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

3.修改postgresql配置文件:

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

4.重新启动postgresql服务:

1 service postgresql restart

安装依赖项

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

1 cd /odoo源码路径
2 #执行安装命令
3 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.到 https://wkhtmltopdf.org/downloads.html 下载对应操作系统版本的安装包,然后安装。

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

1 wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6.1-2/wkhtmltox_0.12.6.1-2.jammy_amd64.deb
2 sudo dpkg -i wkhtmltox_0.12.6.1-2.jammy_amd64.deb
3 sudo apt-get -f install

4.检查是否安装成功:

1 wkhtmltopdf --version

配置并启动odoo16

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

 1 [options]
2 ; This is the password that allows database operations:
3 admin_passwd = ******
4 db_host = False
5 db_port = False
6 db_user = odoo16
7 db_password = ******
8 addons_path = /opt/odoo16/test/odoo/addons/,/opt/odoo16/test/addons/,/opt/odoo16/test/custom_addons/
9 http_port = 8000
10 default_productivity_apps = True

2.启动odoo16:

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

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

点击阅读原文:菜园工程师

Ubuntu安装odoo16的更多相关文章

  1. Mac OS、Ubuntu 安装及使用 Consul

    Consul 概念(摘录): Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,比如 Airbnb 的 SmartStac ...

  2. ubuntu安装mysql

    好记性不如烂笔头,记录一下,ubuntu安装mysql的指令. 安装MySQL: sudo apt-get install mysql-server sudo apt-get install mysq ...

  3. ubuntu安装vim时提示 没有可用的软件包 vim,但是它被其它的软件包引用了 解决办法

    ubuntu安装vim时提示 没有可用的软件包 vim-gtk3,但是它被其它的软件包引用了 解决办法 本人在ubuntu系统安装vim  输入 sudo apt-get install vim 提示 ...

  4. docker 1.8+之后ubuntu安装指定版本docker-engine

    这边记录ubuntu安装过程,首先是官网文档 If you haven’t already done so, log into your Ubuntu instance. Open a termina ...

  5. debian/ubuntu安装桌面环境

    apt-get install xorg apt-get install gnome 然后startx ubuntu 安装Gnome桌面 1.安装全部桌面环境,其实Ubuntu系列桌面实际上有几种桌面 ...

  6. 一个ubuntu phper的自我修养(ubuntu安装)

    ubuntu安装篇 一.ubuntu下载 到ubuntu官网下载适合自己电脑配置的系统版本,此处不做展开. 二.制作USB启动盘 在windows下制作USB启动盘,工具是universal usb ...

  7. ubuntu 安装JAVA jdk的两种方法:

    ubuntu 安装jdk 的两种方式: 1:通过ppa(源) 方式安装. 2:通过官网下载安装包安装. 这里推荐第1种,因为可以通过 apt-get upgrade 方式方便获得jdk的升级 使用pp ...

  8. [其他]Ubuntu安装genymotion后unable to load VirtualBox engine

    问题: Ubuntu安装genymotion后unable to load VirtualBox engine 解决办法: 如果没有安装VirtualBox,要先安装VirtualBox. 安装Vir ...

  9. Ubuntu安装出现左上角光标一直闪解决方式

    Ubuntu安装出现左上角光标一直闪解决方式: 01下载ubunu http://cn.ubuntu.com/download/ 02.软碟通 http://pan.baidu.com/s/1qY8O ...

  10. ubuntu安装pip3

    当初入门Linux 使用的是centos,那个时候是6.0版本,当然现在主流在使用的也是6.0系列的,现在都到6.7了,那个时候centos还是独立的,现在被redhat收购,本来一个红蓝就差不多,个 ...

随机推荐

  1. 简单搭建基本Prometheus监控系统

    前言 适用场景:新手入门:内网离线部署,只是需要了解服务器基本情况,不需要告警系统. 需要准备的安装包: grafana的docker包(先在线下载,然后docker save保存镜像.如果没有doc ...

  2. [prometheus]配置alertmanager和钉钉告警

    目录 prometheus发起告警的逻辑 节点 配置alertmanager 配置钉钉告警插件 配置supervisor守护进程 关联prometheus和alertmanager prometheu ...

  3. springboot项目图片不显示的问题

    首先确认你的图片路径是对的,maven重新clean,install了,web服务也重启了 那么大概率就是浏览器缓存的原因,因为页面直接用的是缓存的旧数据,所以显示不出来. 在不修改浏览器设置的情况下 ...

  4. Python怎么通过url下载网络文件到本地

    以下代码演示Python怎么从网络下载一个文件至本地并保存在当前文件夹download import os import requests from urllib.parse import urlpa ...

  5. 数据api接口就是应用集成吗?

    ​ 数据 API 接口和应用集成是两个不同的概念,但是它们之间有一定的联系.数据 API 接口是一种用于访问和传输数据的标准化接口,而应用集成则是将不同的应用程序和系统整合在一起,实现数据和业务流程的 ...

  6. CodeForces 1388D Captain Flint and Treasure

    题意 给长度为\(n\)的序列\(a[n]\)和\(b[n]\),初始时\(ans=0\),有以下操作: \(ans=ans+a[i]\) 如果\(b[i]\neq-1\),则\(a[b[i]]=a[ ...

  7. python入门基础(13)--类、对象

    面向过程的编程语言,如C语言,所使用的数据和函数之间是没有任何直接联系的,它们之间是通过函数调用提供参数的形式将数据传入函数进行处理. 但可能因为错误的传递参数.错误地修改了数据而导致程序出错,甚至是 ...

  8. No module named virtualenvwrapper 虚拟环境报错

    No module named virtualenvwrapper 虚拟环境报错 安装虚拟环境命令 sudo pip install virtualenv sudo pip install virtu ...

  9. oracle优化-分页查询新认识

    在写这篇文章之前,对分页查询的认识就是经典的三层嵌套:第①层:获得需要的数据,第②层:用rownum限制展示数据的上限,第③层:用rownum的别名rn限制展示数据的下限. 在生产中遇见一个两层嵌套满 ...

  10. 超级实用!React-Router v6实现页面级按钮权限

    大家好,我是王天- 今天咱们用 reac+reactRouter来实现页面级的按钮权限功能.这篇文章分三部分,实现思路.代码实现.踩坑记录. 嫌啰嗦的朋友,直接拖到第二章节看代码哦. 前言 通常情况下 ...