平台版本
odoo在windows开发和linux开发,在环境安装上是有一定差异的,odoo14我们在安装python38的时候会出现,libsass==0.17.0安装错误,需要下载在指定的网址下载visual cc,这里建议Windows版本的话就不要使用python38了,使用python37,差异不大。linux上可以正常的安装python38,linux本身就支持C解析。
pip install -r ./requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
常见pip源
中国科学技术大学 : https://pypi.mirrors.ustc.edu.cn/simple
豆瓣:https://pypi.douban.com/simple/
阿里云:https://mirrors.aliyun.com/pypi/simple/
这里都是用的https,如果使用http需要添加参数–trust-host = 域名
安装步骤
PostgreSQL
你可以选择安装到本机,但我自己喜欢把 db 这个组件安装到 docker,
docker-compose.yml
version: '3.5'
services:
db:
image: postgres:10.9
ports:
- "5432:5432"
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=odoo
- POSTGRES_PASSWORD=odoo
- PGDATA=/var/lib/postgresql/data/pgdata
volumes:
- odoo-db-data:/var/lib/postgresql/data/pgdata
volumes:
odoo-db-data:
直接执行docker-compose up,也可以让他在后台运行docker-compose up -d。(建议在自动启动docker让他自动启动,这样就不用每次都去启动db了)
手动安装
- widows(直接手动下载安装)
- linux安装
数据库安装:https://www.postgresql.org/ftp/source/
解压并安装 tar -zxvf postgresql-14.0.tar.gz
编辑配置文件(具体查看网络其他文章)
vim /usr/local/postgresql/data/postgresql.conf
vim /usr/local/postgresql/data/pg_hba.conf
使用新用户创建数据库
CREATE DATABASE odoo14_test OWNER odoo14;
GRANT ALL PRIVILEGES ON DATABASE odoo14_test TO odoo14;
连接数据库工具
pgadmin4
navicat(个人推荐)
wkhtmltopdf
寻找的版本可以安装wkhtmltopdf
wkhtmltopdf --version 本次推荐的版本为0.12.5。
如果你在 odoo 列印 PDF 时,遇到以下错误
Wkhtmltopdf failed (error code: -8). Message: b’’ error
这是字型的问题,请安装字型
sudo apt install ttf-mscorefonts-installer
pip3 install -r requirements.txt
我会建议安装 requirements.txt 前,先把轮子安装起来
pip3 install wheel
安装 requirements.txt 时,可能会出现类似下面的错误消息。
- 可能出现的错误一,
error: command ‘x86_64-linux-gnu-gcc’ failed with exit status 1
执行以下指令,可参考issues/2115
sudo apt-get install python3 python-dev python3-dev
build-essential libssl-dev libffi-dev
libxml2-dev libxslt1-dev zlib1g-dev
python-pip
可能出现的错误二、
python-ld安装失败,执行以下指令自动,
sudo apt-get install libsasl2-dev python-dev libldap2-dev libssl-dev
可能出现的错误三、
安装psycopg2 会安装失败(odoo15),建议可以改安装psycopg2-binary。
pip3 install psycopg2-binary
可能出现的错误四,
突然更新python(遇一次),自己的时候坏了,
错误如下,
ImportError: /python3.6/site-packages/lxml/etree.cpython-36m-x86_64-linux-gnu.so: undefined symbol: PyFPE_jbuf
解法方法,
pip3 install --upgrade --force-reinstall --no-binary :all: lxml==3.7.1
解决重新安装 requirements.txt 即可。
docker安装
先来看 docker-compose.yml
version: ‘3.5’ services: web:
image: odoo:14.0
depends_on:
- db
ports:
- “8069:8069”
volumes:
- odoo-web-data:/var/lib/odoo
- ./config:/etc/odoo
- ./addons:/mnt/extra-addons
# command:
# odoo -r odoo -w odoo -i addons -d odoo db:
image: postgres:10.9
# ports:
# - “5432:5432”
environment:
- POSTGRES_DB=postgres
- POSTGRES_USER=odoo
- POSTGRES_PASSWORD=odoo
- PGDATA=/var/lib/postgresql/data/pgdata
volumes:
- odoo-db-data:/var/lib/postgresql/data/pgdatavolumes: odoo-web-data: odoo-db-data:
主要有两项服务,
卷中odoo-web-data:/var/lib/odoo储存Odoo中的资料。
卷中的./config:/etc/odoo此类设置 Odoo 的(会说明)。
卷中的./addons:/mnt/extra-addonsOdoo 的附加组件,
odoo.conf
[options] addons_path = /mnt/extra-addons data_dir = /var/lib/odoo
addons_path就是插件的位置,通常有很多,使用插件的隔开即可。
data_dir保存 odoo 资料。
docker-compose up
然后可以浏览http://localhost:8069,