【转】基于Ubuntu Server16.04 安装Odoo11
使用 非 root 用户 进行下面的测试:
本文使用 有sudo 权限的 odoo 用户进行测试()
如果是 阿里云,可以先创建 odoo 用户
sudo adduser odoo
2:给root 权限:
sudo vi /etc/sudoers
修改文件如下:
# User privilege specification
root ALL=(ALL:ALL) ALL
odoo ALL=(ALL:ALL) ALL
保存退出,odoo用户就拥有了root权限。
2: 切换 用户: su odoo
注:这里我在测试时,直接远程Putty 用 odoo用户登录了.
3: 进入 odoo的 家目录 cd ~
第一步: 更新安装依赖并克隆Odoo源码
sudo apt update #注:16.04下只需要输入"sudo apt update" ,-get可以省略
sudo apt upgrade #有个地方会让您确认是否保留当前版本
sudo apt install git # 注:16.04.3自带了git,无需再安装
注:更新完毕后,最好重启下 服务器。
sudo reboot
:安装nodejs:
(ubuntu14.04之后的版本)
sudo apt-get install -y npm
sudo ln -s /usr/bin/nodejs /usr/bin/node
sudo npm install -g less # 安装时注意成功安装的提示
下载odoo源码 ,
下面的命令会下载到odoo11的 子目录内:
git clone https://github.com/odoo/odoo.git odoo11 -b 11.0 --depth=1
如果是从别的电脑复制过来的可能会需要把源码的 所有者 改为odoo 用户:
sudo chown -R odoo odoo11
可以用ls -all 看 目录所属的 用户及组
第二步:安装Odoo系统所需的依赖:
sudo apt-get install -y python3-pip
sudo pip3 install Babel decorator docutils ebaysdk feedparser gevent greenlet html2text Jinja2 lxml Mako MarkupSafe mock num2words ofxparse passlib Pillow psutil psycogreen psycopg2 pydot pyparsing PyPDF2 pyserial python-dateutil python-openid pytz pyusb PyYAML qrcode reportlab requests six suds-jurko vatnumber vobject Werkzeug XlsxWriter xlwt xlrd
注:安装这些依赖时,注意看下载速度,有些时间段会比较慢.有时候还会无法访问到服务器,注意成功安装后的提示. 不行换个时间段安装 就会发现快很多(比如早上8点前)
安装成功后提示:Successfully installed
安装PostgreSQL以及数据库用户:
sudo apt-get install -y postgresql
在数据库创建 odoo这个用户():
sudo su - postgres
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt odoo
Enter password for new role: *****
Enter it again:*****
exit
进入odoo源码目录运行odoo 并生成配置文件 (也可以自己创建一个简单的配置文件)
cd ~/odoo11
./odoo-bin -s
从启动日志可以看到,会在当前用户根目录 生成 配置文件 .odoorcUsing configuration file at /home/odoo/.odoorc
再开一个终端窗口,使用ps aux |grep odoo 可以看 odoo的使用情况,比如:
odoo 1010 0.9 1.6 421168 66852 pts/0 Sl+ 12:22 0:00 python3 ./odoo-bin -c /etc/odoo/odoo.conf
应该是用python3 启动的 odoo.
netstat -ant 可以看端口使用的情况 8069是odoo,22用于ssh,5432用于postgresl :
tcp 0 0 0.0.0.0:8069 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN
如果不用随着系统启动启动odoo,到这里odoo已经可以手动启动了.
如果希望随着系统自动启动,请继续看下去.
注:还可以用python3.5 odoo-bin -s 试试ps aux | grep odoo里面看到是这样的:
odoo 1058 2.7 1.6 422340 66012 pts/0 Sl+ 12:25 0:00 python3.5 odoo-bin
用python3 和 python3.5 启动的,好像crtl + c 关不干净
ctrl + c 应该可以终止,不过有时候好像会停不干净,需要reboot系统.
第三步:设置配置文件
sudo mkdir /etc/odoo
sudo cp /home/odoo/.odoorc /etc/odoo/odoo.conf
sudo chown -R odoo /etc/odoo
我们还需要创建存储Odoo日志的目录,通常位于/var/log内:
sudo mkdir /var/log/odoo
sudo chown odoo /var/log/odoo
现在我们需要确认配置文件中一些重要的参数。
sudo vi /etc/odoo/odoo.conf
下面是2个建议增加的值 :
[options]
logfile = /var/log/odoo/odoo.log
logrotate = True
让我们来看下配置文件中的一些解释:
● addons_path 使用,逗号分隔的扩展路径,会在路径中寻找模块,从左至右阅读,最左侧拥有最高的优先级。
● admin_passwd 是master主控密码,用于访问web客户端数据库管理。建议设置一个足够强的密码,设置为False能让此功能失效。
● db_user 数据库实例在服务器启动序列期间进行初始化。
● dbfilter 用于筛选可访问的数据库,它是Pythoninterpreted正则表达式. 用于不让用户选择数据库,及未验证的URLs正常工作,它应该以^dbname$设置, 例如 dbfilter=^odoo-prod$。 它支持%h和%d占位符, 用来HTTP请求的主机名和子域名.
● logfile Odoo服务日志写入的地方。系统服务的日志通常位于/var/log. 留空,或者设为False,日志则会以标准方式输出。
● logrotate = True 按天存放日志
● proxy_mode 当使用反向代理时,应当设为True。
● without_demo 在生产环境中应设为True,这样新的数据库中就不会有演示数据。
● workers 值为启用的处理器数量。
● xmlrpc_port 服务监听的端口号。默认使用8069
下面的参数也会很有帮助:
● data_dir 会话数据和附件存储的位置,记得备份它。
● xmlrpc-interface 设置监听的地址。默认值会监听所有端口 0.0.0.0, 在使用反向代理时,可以设置为127.0.0.1 目的是只对本地请求响应。
通过-c参数运行服务,我们可以检查配置的效果:
./odoo-bin -c /etc/odoo/odoo.conf
注意:因为设置了日志文件,所以不会跳出日志,
ctrl + c 应该可以终止,不过有时候好像会停不干净,需要reboot系统.
要看 日志的话,可以 再开一个终端 ,用odoo 用户,使用:
tail -f /var/log/odoo/odoo.log 查看 日志。
Odoo服务 启动后 试试看在界面 创建 数据库
8:安装中文字体:
sudo apt-get install ttf-wqy-zenhei -y
sudo apt-get install ttf-wqy-microhei -y
9.安装报表所需的wkhtmltopdf
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.2.1/wkhtmltox-0.12.2.1_linux-trusty-amd64.deb
sudo dpkg -i wkhtmltox-0.12.2.1_linux-trusty-amd64.deb # 会提示要安装xfonts-75dpi 等,这时候用apt-get -f install会安装这2个依赖
sudo ln -s /usr/local/bin/wkhtmltopdf /usr/bin
sudo ln -s /usr/local/bin/wkhtmltoimage /usr/bin
第四步:创建 /lib/systemd/system/odoo.service 文件,让odoo随着系统自动启动
由于16.04 使用了systemd作为init,因此把Odoo配置为服务,稍有不同。
要检查您的系统是否使用systemd,运行下面的命令:
$ man init
这会打开当前使用的init系统的文档,您能检查到底使用的是哪种。
如果您的服务器使用的是systemd。
使用systemd init系统。要为系统增加新的服务。 创建 /lib/systemd/system/odoo.service 文件:
sudo vi /lib/systemd/system/odoo.service :
[Unit]
Description=Odoo
After=postgresql.service
[Service]
Type=simple
User=odoo
Group=odoo
ExecStart=/home/odoo/odoo11/odoo-bin -c /etc/odoo/odoo.conf
[Install]
WantedBy=multi-user.target
我们需要注册新的服务:
sudo systemctl enable odoo.service
要开启这个新服务使用下面的命令:
sudo systemctl start odoo
检查它的状态:
sudo systemctl status odoo
会看到下面这样,其中 Active active(running)表示正确运行,而且我们可以看到是运行在python3下的
● odoo.service - Odoo
Loaded: loaded (/lib/systemd/system/odoo.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2017-10-15 12:46:54 CST; 6s ago
Main PID: 930 (python3)
CGroup: /system.slice/odoo.service
└─930 python3 /home/odoo/odoo11/odoo-bin -c /etc/odoo/odoo.conf
Oct 15 12:46:54 iZuf6jevtfmojh35fpwxb5Z systemd[1]: Started Odoo.
最后,如果您希望停止它,使用下面的命令:
sudo systemctl stop odoo
也可以用 service odoo start 和 service odoo stop 来开启停止服务。
现在可以确认我们的Odoo实例启动了,并能响应请求。
如果Odoo正常运行,我们可以在日志文件中获得信息。我们可以检查Odoo是否响应HTTP请求:
curl http://localhost:8069
要检查日志文件,我们可以使用:
sudo less /var/log/odoo/odoo.log
您还可以使用tail -f:
sudo tail -f /var/log/odoo/odoo.log
【转】基于Ubuntu Server16.04 安装Odoo11的更多相关文章
- Ubuntu Server16.04 安装Odoo11
odoo11采用了python3实现的. 1.sudo adduser odoo //新建一个用户odoo 2.给odoo 用户root 权限 visudo //使用visudo 编辑 /et ...
- Ubuntu server16.04安装配置驱动418.87、cuda10.1、cudnn7.6.4.38、anaconda、pytorch超详细解决
目录 安装GCC 安装NVIDIA驱动 1. 卸载原有驱动(没装跳过) 2. 禁用nouveau 3. 安装NVIDIA显卡驱动 安装CUDA10.1 安装cudnn 安装anaconda 安装ten ...
- Ubuntu 13.04安装搜狗输入法
Ubuntu 13.04安装搜狗输入法 [日期:2013-07-08] 来源:Linux公社 作者:LinuxIDC.com [字体:大 中 小] 目标:在Ubuntu 13.04以及基于U ...
- 【转】基于Ubuntu 14.04 LTS编译Android4.4.2源代码
原文网址:http://blog.csdn.net/gobitan/article/details/24367439 基于Ubuntu 14.04 LTS编译Android4.4.2源代码 ...
- 做自己的docker镜像(基于ubuntu:16.04)
基于ubuntu:16.04 apt-get update -y apt-get install sudo -y 换源 sudo apt-get install vim sudo vim /etc/a ...
- Ubuntu 16.04安装sogou 拼音输入法
一.更换为国内的软件源 安装搜狗输入法之前请先更换为国内的软件源,否则无法解决依赖问题.首先,用以下命令打开源列表: sudo gedit /etc/apt/sources.list #用文本编辑器打 ...
- 记录Ubuntu 16.04 安装Docker CE
一.Docker的两个版本 Docker有两个版本: 社区版(CE) 企业版(EE) Docker Community Edition(CE)非常适合希望开始使用Docker并尝试使用基于容器的应用程 ...
- Ubuntu 16.04安装Vim8.0
Ubuntu 16.04安装Vim8.0 https://www.aliyun.com/jiaocheng/131859.html sudo add-apt-repository ppa:jonath ...
- [笔记] Ubuntu 18.04安装Docker CE及nvidia-docker2流程
Docker的好处之一,就是在Container里面可以随意瞎搞,不用担心弄崩Host的环境. 而nvidia-docker2的好处是NVidia帮你配好了Host和Container之间的CUDA相 ...
随机推荐
- Expo大作战(十一)--expo中的预加载和缓存资产(Preloading & Caching Assets),expo中的图标 (Icon)
简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...
- MySQL 性能监控4大指标——第一部分
[编者按]本文作者为 John Matson,主要介绍 mysql 性能监控应该关注的4大指标. 第一部分将详细介绍前两个指标: 查询吞吐量与查询执行性能.文章系国内 ITOM 管理平台 OneAPM ...
- c# 二分查找法
1.仅 当 列表 是 有序 的 时候, 二分 查找 才 管用. 2.一般而言, 对于 包含 n 个 元素 的 列表, 用 二分 查找 最多 需要 log2n 步, 而 简单 查找 最多 需要 n 步. ...
- sql Server 查询方法的优化
在使用SQL语句查询数据库记录时,如果要查询相同的内容,有着不同的多种方法. 仍然,尽管使用多种方法可以得到相同的结果,但是,如果您使用不同的方法,在执行效益上是截然不同的.因此,我们得仔细考虑,如果 ...
- ecplice 中添加JavaFX插件学习
fxml文件使用SceneBuilder打开报错 解决方法:Window-->Preferences-->JavaFX-->browse 路径是可执行的JavaFX Scene Bu ...
- JVM & GC 笔记
0. 说明 转载并修改自JVM 1. JVM 1.1 什么是JVM JVM为Java虚拟机(Java Virtual Machine) Runtime data area,运行时数据区. 包含5个区域 ...
- Linux uniq命令详解
uniq常见命令参数 用法:uniq [选项]... [文件] 从输入文件或者标准输入中筛选相邻的匹配行并写入到输出文件或标准输出. 不附加任何选项时匹配行将在首次出现处被合并. 长选项必须使用的参数 ...
- Linux每日小技巧---统计服务器IP连接数
netstat命令 [root@:vg_adn_tidbCkhsTest:172.31.30.62 ~]#netstat -tun | awk '{print $5}' | cut -d: -f1 | ...
- 深入浅出Web开发——Fiddler
环境配置: 如果使用Chrome,Fiddler无法捕捉HTTP请求信息,请检查Chrome是否使用SwitchyOmega插件.
- October 20th 2017 Week 42nd Friday
My life is in these books. Read these and know my heart. 我的人生就在这些书中,读完他们就能读懂我的心. Some people say tha ...