我承认以前的 centos 安装上有错误, 这次, 我重新记录一下安装过程
注意, 我使用 pyenv 来管理 python 的版本
安装开始
环境是 ubuntu16.04 阿里云的 ecs
首先更新下系统
sudo apt update && sudo apt upgrade
接着移除旧内核
sudo apt autoremove
因为 ubuntu 是不用重启就可以安装好内核的, 所以你可以不重启
新建 gooderp 用户
首先新建一个用户来管理 gooderp
groupadd gooderp
useradd - g gooderp gooderp
passwd gooderp
接着让 gooderp 用户可以使用 sudo 命令
visudo
在这个文件中添加
gooderp ALL = (ALL: ALL) ALL
之后切换成 gooderp 用户
su gooderp
下载源码包
首先安装 git
sudo apt install git
在 / home 下新建 gooderp 目录
sudo mkdir / home / gooderp
修改目录所有者
sudo chown - Rf gooderp: gooderp / home / gooderp
接着切换到 gooderp 目录下载源码包
cd~git clone http: //github.com/osbzr/gooderp_addons
git clone http: //github.com/osbzr/base
安装 nodejs
因为环境变量的关系, 所以我就没有使用 nvm 来管理 nodejs 版本了, 直接使用 apt 包管理工具去安装 nodejs
sudo apt install npm
默认 nodejs 的二进制文件是 nodejs 而不是 node, 项目中使用的是 node 所以要建立一个链接
ln - s / usr / bin / nodejs / usr / bin / node
接着安装 less
sudo npm install - g less
安装 python
首先安装 pyenv
curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
编辑. bashrc 加入
vim .bashrc
export PATH="/home/gooderp/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
使环境变量生效
source .bashrc
安装 一些依赖, 让 python 可以安装完整, 就是下面这些
sudo apt install zlib1g - dev libreadline - dev libssl - dev libbz2 - dev libsqlite3 - dev
安装 python
pyenv install 2.7.14
之后别忘记切换 python 的版本, 把从 system 切换到 2.7.14
pyenv global 2.7.14
之后安装依赖
pip install - r base / requirements.txt
安装的时候会报错, 我贴我的报错信息
Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?
安装 libxml2-dev
sudo apt install libxml2 - dev
接着报错
src / lxml / includes / etree_defs.h: 14 : 31 : fatal error: libxml / xmlversion.h: No such file or directory
执行下面命令
export C_INCLUDE_PATH = /usr/include / libxml2 /
之后又报错
src / lxml / includes / etree_defs.h: 23 : 32 : fatal error: libxslt / xsltconfig.h: No such file or directory
安装 libxslt-dev
sudo apt install libxslt - dev
继续报错
Modules / errors.h: 8 : 18 : fatal error: lber.h: No such file or directory
安装 libldap2-dev
sudo apt install libldap2 - dev
继续报错
Modules / LDAPObject.c: 18 : 18 : fatal error: sasl.h: No such file or directory
安装下面这个包
sudo apt - get install libsasl2 - dev
最后下面这两个库没有安装可能会导致 CSS 样式有问题
pip install simplejson httplib2
安装 wkhtmltopdf
这个必须安装, 不安装不能打印会计凭证, 感谢 jeff wang
首先下载
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.2.1/wkhtmltox-0.12.2.1_linux-trusty-amd64.deb
安装
sudo apt install. / wkhtmltox - 0.12.2.1_linux - trusty - amd64.deb
安装 postgresql
新建下面这个文件
/etc/apt / sources.list.d / pgdg.list
在里面添加
deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main
下载公钥更新软件源
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | \
sudo apt-key add -
sudo apt-get update
安装 postgresql
sudo apt - get install postgresql - 9.6
设置开机启动 postgresql 服务
sudo systemctl enable postgresql
建立 gooderp 数据库用户
切换到 postgresql 用户
su root
su postgres
建立 gooderp 用户
createuser - d - U postgres - R - S - P gooderp
切换到 gooderp 用户
su gooderp
修改两个文件夹用户权限
chown - Rf gooderp: gooderp base / gooderp_addons /
启动 gooderp
python base / odoo - bin--addons - path = gooderp_addons &
设置开机启动
编辑下面这个文件
sudo vim / lib / systemd / system / gooderp.service
添加
[Unit]
Description=GoodERP
Documentation=http://www.gooderp.org/
After=network.target postgresql.service
[Service]
Type=simple
User=gooderp
ExecStart=/home/gooderp/.pyenv/versions/2.7.14/bin/python /home/gooderp/base/odoo-bin --addons-path=/home/gooderp/gooderp_addons
[Install]
WantedBy=multi-user.target
接着运行
sudo systemctl enable gooderp
重启验证
来源: http://www.bboysoul.com/2018/02/04/ubuntu安装gooderp终极指南/