在windows操作平台下进行Odoo的安装
一、初衷
首先这个odoo是一个朋友的朋友介绍的,说让我尝试弄下,主要是为了适应公司业务来弄(不然没那么顽强毅力去折腾,人总要向一个目标点不断去靠近,没目标点,方向都没有,很是可怕)这个东西很折腾,当时就弄了一下午,东查西查才发现这个是使用python语言来写的,突然惊呆了!python不是用来写爬虫的,居然还可以做页面,还可以这么好。去odoo网站时注册了一个用来演示的账号,登录后发现很多功能,以前都没见过,随便点了一下菜单,才发现这个odoo并不强大,问题很多。我就没有接着弄了。
之后呢,发现自己要做的事情多了,不得不需要一个系统来帮助完成人类每天要做的繁琐事务,直白的说,我就想偷个懒,操心的事情,总让人脑壳疼。
二、尝试
进展如何
- 每次尝试我都很happy但也很烦(天天花这个上面的时间真的很少,只有晚上时才能弄下子,网络是个问题,下个东西真慢,电脑在下载,盯着屏幕盯久了就睡着了,很怕突然没有下载完,用这样情形来概述下:工厂的机器几乎不停,这样会很容易导致机器在运行过程中产生问题,所以技术人员必须24小时全天候观察机器的运行状态,不舍昼夜。而我白天只能趁着工作不忙时来折腾下,晚上可以说盯着屏幕观望,久了就睡了),毕竟是启动一个别人的项目,你不清楚他的思路,用测试的术语来说就是黑盒测试,为了想看下成果,学习下子,最主要是偷懒。但是最后的效果不是很好。
- 尝试了几次,没能成功,于是我尝试切换版本,放到最高的版本(一般高版本我认为需要的东西并不是很多),哈哈,成了。说明下:该版本为odoo12
- 当时是使用工作用电脑搭建的,非常卡,我又卸了某些环境支持,又把odoo12跑不动了
- 再后来打算用个人电脑搭建,白天把需要的东西都下载弄好,备份起来,晚上一次又一次安装再安装,就这样尝试,换版本,最终使用odoo10,以下内容是依据odoo10来编写(一般高版本会有些新内容,而这些新内容都不会有相关内容介绍,需要花时间去编辑相关的资料,资料跟版本不能保证同步)
三、odoo10
参考资料
Odoo社区版源码: https://github.com/odoo/odoo
CSDN上的Odoo安装参考: https://blog.csdn.net/feigamesnb/article/details/50392082
Odoo官方安装文档:https://www.odoo.com/documentation/master/setup/install.html#source-install
申明:本套文档采用源码安装的方式搭建开发模块环境,以供修改源码符合自己的开发需求。
依赖文件
需要注意的一点,python文件是什么版本,下载的依赖文件就使用支持什么版本的python(举例:python27,那么安装py2exe这个模块就需要可以支持python27的,这样说可以理解吧)
要说明一点,MicrosoftVCTools工具链接下面的没有给出,请自行搜索获取下载
文件名 | 描述 | 版本号 |
---|---|---|
odoo | odoo源码包 | 10.0 |
python | python工具 | 2.7.13 |
postgreSQL | postgreSQL数据库 | 10.6 |
pgAdmin4 | postgreSQL数据库图形化界面 | 4-1.6 |
nodejs | nodejs用来处理odoo的ui | 10.15.0 |
pycharm | python的ide编辑工具 | professional-2016.3.4 |
pip | python下载工具 | 18.1 |
psycopg | pg的驱动 | 2-2.6.2 |
VCForPython27 | 支持python的VC编译器 | VCForPython27 |
reportlab | pdf生成工具 | 3.5.13-cp27-cp27m |
wkhtmltopdf | HTML转换为图片和pdf | 0.12.5-1.msvc2015 |
py2exe | python的exe打包工具 | 0.6.9 |
MicrosoftVCTools | 描述:可能是vc有关的管理小工具 |
开始安装
小常识:为了方便管理,我们都使用自定义安装,指定安装工作区,例如D:\odoo路径是我的工作区,odoo所有需要的环境及其依赖都放到该目录下
Python安装
执行python安装包的配置
- 打开安装包文件(根据自己电脑的系统位数来挑选安装,选一个就好了)
- 启动安装向导
- 指定安装路径
- 选择需要的模块
- 正在进行安装
- 安装完成
安装完之后,我们需要在windows系统环境变量配置中去配置python的环境变量。
接着我们来测试下python是否是可用的
PostgreSQL安装
执行postgresSQL安装包的配置
- 打开安装包文件(根据自己电脑的系统位数来挑选安装,选一个就好了)
- 启动安装向导
- 指定安装路径
- 选择要安装的组件
- 指定data数据文件储存路径
- 设置postgres用户的密码(这里我设置为pssql)
- 设置端口号
- 选择地区
- 安装摘要信息确认
- 准备安装
- 正在进行安装
- 安装完成
pgAdmin4
执行pgAdmin4安装包的配置
- 打开安装包文件
- 启动安装向导
- 同意安装协议
- 指定安装路径
- 准备安装
- 正在进行安装
如果遇到下面的情况,不要慌,这个是由于你电脑中缺少这个东西,需要联网进行下载
- 安装完成(取消勾选,不直接启动pgAdmin)
依赖支持
pip工具
注:安装可以参考(https://jingyan.baidu.com/article/ff42efa9d630e5c19e220207.html)
解压pip.tar.gz文件,进入它的根目录下
小技巧:在当前文件浏览区的空白区域:按住键盘上的shift键+鼠标右键,选择“在此处打开命令窗口”(后面的操作有些也一样,借鉴一下这个,操作不再重复)
python setup.py install
安装中的过程太长,为此就将上图处理了一下,大家可以看到 “finished processing dependecies for pip==18.1”,这个提示代表pip依赖已成功安装,但不能代表安装成功了我们就可以正常使用了,需要手动配置一下环境变量
测试一下看看是否安装成功
pip list
安装pg驱动
这个工具直接双击它运行就可以了,非常简单(根据自己电脑的系统位数来挑选安装,选一个就好了)
安装python的vc编译器
这个工具直接双击它运行就可以了,非常简单
安装reportlab
这个工具我们需要通过pip来进行安装(根据自己电脑的系统位数来挑选安装,选一个就好了)
pip install reportlab-3.5.13-cp27-cp27m-win_amd64.whl
安装wkhtmltox
这个工具直接双击它运行就可以了,非常简单(根据自己电脑的系统位数来挑选安装,选一个就好了)
安装py2exe
这个工具直接双击它运行就可以了,非常简单(根据自己电脑的系统位数来挑选安装,选一个就好了)
建议:如果缺少某些东西,你并不知道,而是在odoo启动时才会发觉,导致的原因一般要么网速跟不上,要么版本不兼容,还要么就是缺了某些东西或者访问受限(靠翻墙解决、搭VPN也行、手动获取安装包文件),如果版本不兼容的话则需要卸载,使用 “pip uninstall 文件名”就可以了,文件名不是自定义的,而是通过pip list来查看已安装模块(不清楚可以自行搜索关于pip工具的介绍及其使用)
Node.js
执行nodejs安装包的配置
- 这个工具直接双击它运行就可以了(根据自己电脑的系统位数来挑选安装,选一个就好了)
- 启动安装向导
- 同意安装协议
- 指定安装路径
- 自定义参数配置
- 准备安装
- 正在进行安装
- 安装完成
- 配置目录(在node安装路径下新增这两个文件夹 node_cache 与 node_global)
这个配置可以不配(请忽略掉这个)
npm config set prefix "D:\Odoo\Nodejs\node_global"
npm config set cache "D:\Odoo\Nodejs\node_cache"
配置nodejs有关的环境变量
nodejs环境变量配置好后,我们来测试下nodejs是否可用
安装odoo ui界面需要的nodejs模块
npm install -g cnpm --registry=https://registry.npm.taobao.org
npm install -g rtlcss
npm install -g less
npm install -g less-plugin-clean-css
npm install -g express
npm install -g express-generator
Pycharm
执行pycharm安装包的配置
- 打开安装包文件
- 启动安装向导
- 指定安装路径
- 安装选项设置
- 开始菜单配置
- 正在进行安装
- 安装完成
启动odoo
先解压下面的文件
执行根目录下的txt文件
pip install requirements.txt
配置odoo.conf文件
该文件存放的位置:odoo根目录下\debian\odoo.conf
创建一个数据库用户
我们打开pgAdmin4工具,来创建用户叫odoo,密码为odoo
使用odoo-bin来执行odoo的工程
在此,我写了一个windows的脚本文件,名称为startup.cmd,放在了odoo的根目录下
@echo off
mode con lines=60 cols=50
title running my odoo
color 0a
echo v v v v v v v v v v v v v v v v v v v v
echo v v v v v v v v
echo v v v v v v v v
echo v 1 v v 0 v v . v v 0 v
echo v v v v v v v v
echo v v v v v v v v
echo v v v v v v v v v v v v v v v v v v v v
echo.------------------------------------------------
echo default database manager info
echo.------------------------------------------------
echo username:odoo
echo password:odoo
echo running database:odop
echo.------------------------------------------------
python odoo-bin -w odoo -r odoo --addons-path=addons --db-filter=odop
pause
我们运行这个startup.cmd文件
有个叫8069的,这个是访问odoo的端口号,地址为:http://localhost 或 192.0.0.1 +端口号
访问会进入odoo初始页面,需要我们对此进行配置,需要注意的一点:数据库名称要为odop,因为startup.cmd里指定了数据库过滤的名称为odop,有兴趣的同学可以搜索一下关于odoo-bin的参数详解或odoo-bin有关的内容,这里就不进行更多的描述了。
我们细心的发现,绿色的命令行窗口会在不停地打印一些日志信息
来个odoo登录之后的全景图
好了,odoo可以跑起来了,但是我们想在python进行odoo的模块化定制开发,这个需要怎么弄?请接着往下看(先关掉命令行吧):
PyCharm中开发Odoo
既然是在pycharm中开发odoo,肯定首先要把odoo给启动起来,不过这里的启动跟上面的会有点区别(上面的启动是在cmd命令窗口下执行的,一旦命令窗口关闭,则odoo就会停止,自然也就无法进行web端的访问了)
- 通过pycharm来打开odoo工程
- 配置项目python运行环境
- 配置项目的一些运行参数
先把“odoo-bin”的运行配置保存
之后我们再选择编辑配置 “Edit Configurations”,打开后配置两项参数(红色方框的内容)
又再次成功在pycharm里启动了,紧接着我们也同样来访问以下web端上的页面,看下是否能够正常访问 (下图是我通过pycharm启动的小块截图)
odoo安装会遇到的问题
主要是执行 "pip install -r requirements.txt"会遇到的
- 会出现 “error: Microsoft Visual C++ 14.0 is required”提示,需要安装一个叫visual-cpp-build-tools
安装下面这个文件就不会提示了,或者你可以访问上图中的错误提示给的链接地址进行获取并下载到本地来安装
- python-ldap一直安装不了(为了这个我花了将近1天去重复安装python-ldap,结果还是无用功,根本不行,于是在odoo的官网文档上找到了相关的字眼)
我就不装这个,并把本机的hosts文件进行修改,之后执行那句批量下载的(pip install -r requirements.txt),比较修改hosts文件前后,通过pip list发现东西多了许多,于是尝试去执行odoo-bin命令,最后发现odoo启动并没有出现任何错误提示,只是简单的把端口号打出来,看来是启动成功了。
其次是执行“odoo-bin”遇到的
我在安装odoo12时,遇到过重复加载初始化的界面,也就是第一次创建数据库(web),这个跟 --db-filter参数有点关系,需要在配置和页面初始创建的时候把两个名称给统一(上面的创建和startup.cmd里指定的–db-filter名称是一致的),别的我还不够深入,还有一个odoo.conf文件,这个个人觉得odoo在执行odoo-bin时加载了该配置文件。