虽然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. 解读 --- Span<T>

    引言 Span<T> 是C# 中的一种结构体,它是一种内存安全的类型,可以用来表示连续的内存区域.Span<T> 可以被用于访问和操作数组.堆上分配的内存和栈上分配的内存.使用 ...

  2. 记录一次解决数据库连接池连接泄露BUG

    1 BUG现象 系统并发请求,系统停滞无法使用,所有接口都是无法与后端进行交互的状态,系统并没有宕机 2 BUG的业务流程 插入分数方法 涉及插入表ABCD 加了声明式事务 查询分数方法 涉及表ABC ...

  3. k8s实战案例之运行WordPress

    1.WordPress架构 LNMP案例之基于Nginx+PHP实现WordPress博客站点,要求Nginx+PHP运⾏在同⼀个Pod的不同容器;nginx主要作用是接入站点请求,如果请求静态资源n ...

  4. 《CTFshow-Web入门》03. Web 21~30

    @ 目录 web21 题解 原理 web22 题解 原理 web23 题解 原理 web24 题解 原理 web25 题解 原理 web26 题解 web27 题解 web28 题解 web29 题解 ...

  5. 数据可视化【原创】vue复合数字形式展示

    做数据可视化的时候,经常碰到需要很灵活的数字形式展示. 先上个效果图: 如图包括名称,数量,别名,单位,上升下降,环比等等的复合数据展示,并且需要支持样式灵活配置. 此组件包括2个模块,父容器组件bo ...

  6. 浅谈API安全的应用

    ​ 理论基础 API它的全称是Application Programming Interface,也叫做应用程序接口,它定义了软件之间的数据交互方式.功能类型.随着互联网的普及和发展,API 从早期的 ...

  7. 有Root与无Root安装git-lfs

    有Root与无Root安装git-lfs 直接安装 先查看arm还是AMD 例如当前使用Rocky Linux 8.8版本的内核.因此,应该下载适用于Rocky Linux 8.x的Git LFS安装 ...

  8. 探索计算机的I/O控制方式:了解DMA控制器的作用与优势

    I/O控制方式 在前面我们已经了解到,每个设备都配备了一个设备控制器.当CPU向设备控制器发送命令并将其存储在寄存器中时,设备控制器会执行相应的操作.然而,尽管设备控制器会更新状态寄存器的状态,但是如 ...

  9. JDK8升级JDK11最全实践干货来了

    1.前言 截至目前(2023年),Java8发布至今已有9年,2018年9月25日,Oracle发布了Java11,这是Java8之后的首个LTS版本.那么从JDK8到JDK11,到底带来了哪些特性呢 ...

  10. Solution -「CF 1477A」Nezzar and Board

    Description Link. $ n $ distinct integers $ x_1,x_2,\ldots,x_n $ are written on the board. Nezzar ca ...