配置ubuntu 16.04.1 LTS odoo 10.0开发环境
使用VMware Fusion 8.5.0创建ubuntu 64bit虚拟机:
使用ubuntu-16.04.1-desktop-amd64.iso镜像缺省安装ubuntu,用户名odoo,密码123456
安装VMWare Tools:
参照http://www.linuxidc.com/Linux/2016-04/130807.htm
安装ubuntu最新更新:
sudo apt-get update && sudo apt-get upgrade
安装git:
sudo apt-get install git
安装PostgreSQL:
sudo apt-get install postgresql -y
添加odoo账号到数据库
sudo su - postgres -c "createuser -s odoo" 2> /dev/null || true
安装依赖包:
安装tool packages
sudo apt-get install wget git python-pip gdebi-core -y
安装python packages
sudo apt-get install python-dateutil python-feedparser python-ldap python-libxslt1 python-lxml python-mako python-openid python-psycopg2 python-pybabel python-pychart python-pydot python-pyparsing python-reportlab python-simplejson python-tz python-vatnumber python-vobject python-webdav python-werkzeug python-xlwt python-yaml python-zsi python-docutils python-psutil python-mock python-unittest2 python-jinja2 python-pypdf python-decorator python-requests python-passlib python-pil python-suds -y
安装python libraries
sudo pip install gdata psycogreen ofxparse XlsxWriter
安装其它required packages
sudo apt-get install node-clean-css -y
sudo apt-get install node-less -y
sudo apt-get install python-gevent -y
安装odoo企业版依赖库(可选)
sudo ln -s /usr/bin/nodejs /usr/bin/node
sudo apt-get install nodejs npm
sudo npm install -g less
sudo npm install -g less-plugin-clean-css
sudo pip install suds
安装Wkhtmltopdf(可选)
sudo wget http://download.gna.org/wkhtmltopdf/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb
sudo gdebi --n `basename http://download.gna.org/wkhtmltopdf/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb`
sudo ln -s /usr/local/bin/wkhtmltopdf /usr/bin
sudo ln -s /usr/local/bin/wkhtmltoimage /usr/bin
安装中文字体、条形码字体及中文输入法
sudo apt-get install ttf-wqy-zenhei #安装中文字体
sudo apt-get install ttf-wqy-microhei #安装中文字体
将此链接中的字体下载,解压得到pfbfer文件夹,放到 /usr/share/fonts/type1之下即可,注意设置文件权限
cd /usr/share/fonts/type1
sudo chmod 744 *
中文拼音输入法:
sudo apt install ibus-pinyin ibus-libpinyin
获取odoo源码:
建立odoo源码项目保存路径
mkdir ~/odoo-dev
cd ~/odoo-dev
拉取源码保存到odoo-server目录
git clone https://www.github.com/odoo/odoo --branch 10.0 --single-branch odoo-server/
创建自行开发的addons的子目录
mkdir ~/odoo-dev/custom
mkdir ~/odoo-dev/custom/addons
生成odoo运行配置文件
cp ~/odoo-dev/odoo-server/debian/odoo.conf ~/odoo-dev/odoo.conf
打开gedit编辑
gedit ~/odoo-dev/odoo.conf
修改addons_path
addons_path = /home/odoo/odoo-dev/odoo-server/addons,/home/odoo/odoo-dev/custom/addons
保存退出gedit
启动odoo
/home/odoo/odoo-dev/odoo-server/odoo-bin -c /home/odoo/odoo-dev/odoo.conf
安装pycharm:
先安装java JDK
sudo apt-add-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
从 http://www.jetbrains.com/pycharm/download/ 下载最新的Pycharm 2016.2
解压到~/pycharm,找到bin文件夹运行./pycharm.sh
在安装过程中,指定注册码:http://blog.csdn.net/lk274857347/article/details/52034354
安装完后,如果你不喜欢pycharm的即时保存,可以参考这里: PyCharm 4.5.4 环境配置
配置pycharm调试
启动PyCharm,打开~/odoo-dev/odoo-server目录,等待几分钟indexing完成
菜单Run-->Edit Configurations…
添加python configuration
Name: odoo
Script: /home/odoo/odoo-dev/odoo-server/odoo-bin
Script parameters: --config=/home/odoo/odoo-dev/odoo.conf
Working directory: /home/odoo/odoo-dev/odoo-server
安装pgAdmin3:
sudo apt-get install pgadmin3
设置postgres用户密码:
切换到ubuntu下postgres用户,登录postgres数据库
sudo -u postgres psql postgres
在postgres=#提示符下执行
alter user postgres with password 'postgres';
启动pgadmin3
添加本地数据库配置,Name随便写,Host输入localhost,Port输入5432,Maintenance DB和Username、Password都是postgres
可能用到的:
安装ubuntu主题工具
sudo apt-get install unity-tweak-tool
sudo add-apt-repository ppa:noobslab/themes
sudo add-apt-repository ppa:noobslab/icons
sudo apt-get update
sudo apt-get install flatabulous-theme
sudo apt-get install ultra-flat-icons
安装完成后,打开unity-tweak-tool软件,修改主题和图标:
进入Theme,修改为Flatabulous,在此界面下进入Icons栏,修改为Ultra-flat。
安装easy_install工具
下面的数据库驱动安装步骤需要用到
wget http://peak.telecommunity.com/dist/ez_setup.py
sudo python ez_setup.py
rm ez_setup.py
配置mssql、mysql、sqlite、odbc数据库驱动,用于导入其他数据源的数据到odoo数据库
sudo apt-get install unixodbc unixodbc-bin unixodbc-dev
sudo apt-get install python-pyodbc
sudo apt-get install tdsodbc
编辑文件
sudo gedit /etc/odbcinst.ini
添加下面的内容,然后保存退出gedit
[FreeTDS]
Driver =/usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so
按下列顺序安装pymssql:
sudo apt-get install freetds-dev
sudo pip install Cython
sudo pip install pymssql
安装mysql等支持库
sudo apt-get install python-mysqldb
sudo apt-get install libmysqlclient-dev
sudo easy_install MySQL-Python
sudo easy_install SQLAlchemy
安装MySQL Workbench
sudo apt-get install mysql-client mysql-workbench
配置oracle数据库驱动,用于导入其他数据源的数据到odoo数据库
从oracle官网 http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html 下载11.2.0.4.0版本的如下文件:
instantclient-basic-linux.x64-11.2.0.4.0.zip、instantclient-sdk-linux.x64-11.2.0.4.0.zip
将这两个文件解压缩后的目录instantclient_11_2移置新建的/usr/lib/oracle目录
sudo mkdir /usr/lib/oracle
sudo mv ~/instantclient_11_2 /usr/lib/oracle
cd /usr/lib/oracle/instantclient_11_2
下面这行重要,否则后面安装cx_oracle时报错:collect2: error: ld returned 1 exit status
ln -s libclntsh.so.11.1 libclntsh.so
sudo gedit /etc/profile 将下两行加到文件末尾,保存退出gedit
export ORACLE_HOME=/usr/lib/oracle/instantclient_11_2 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME
source /etc/profile 使这些环境变量生效
sudo gedit /etc/ld.so.conf.d/oracle.conf 创建oracle.conf文件,在其中添加一行指向so文件路径,如下
/usr/lib/oracle/instantclient_11_2
更新路径
sudo ldconfig
下面的步骤不能少,否则在安装cx_Oracle时会报“cannot locate an Oracle software installation” 错误:
sudo visudo
将下面的行添加到其它Defaults行的下方
Defaults env_keep += "ORACLE_HOME"
保存退出编辑器
安装必要的库:
sudo apt-get install build-essential unzip python-dev libaio-dev
最后安装cx_oracle,此步骤可能需要科学上网。
sudo pip install cx_oracle
安装Oracle SQLDeveloper
下载安装文件http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html,选择Other Platforms,
解压缩到~目录,完整路径为/home/odoo/sqldeveloper
使用Files文件管理器,打开该目录,右键点击sqldeveloper.sh,设置属性,Permissions,选中Execute选择框。
使用gedit打开编辑该文件,将原来的cd那行用#注释掉,添加下面的行,然后保存。
cd /home/odoo/sqldeveloper/sqldeveloper/bin && bash sqldeveloper $*
命令行执行:
sudo ln -s /home/odoo/sqldeveloper/sqldeveloper.sh /usr/local/bin/sqldeveloper
然后就可以使用下面的命令启动SQLDeveloper
sqldeveloper
首次启动,会要求输入java的安装位置,输入下面的位置:
/usr/lib/jvm/java-8-oracle
最后,建立桌面快捷方式,创建下面的文件:
sudo gedit /usr/share/applications/sqldeveloper.desktop
加入下面的内容,保存。
[Desktop Entry] Exec=sqldeveloper Terminal=false StartupNotify=true Categories=GNOME;Oracle; Type=Application Icon=/home/odoo/sqldeveloper/icon.png Name=Oracle SQL Developer
更新一下
sudo update-desktop-database
然后就可以在launcher中搜索到oracle sql developer程序,点击运行。
清理apt-get安装文件
sudo apt-get autoremove
安装nginx反向代理
主要作用:可以使用https协议加密通讯,更安全的网络设置,缓存静态内容存取,减轻odoo服务器的负担,压缩内容提升速度,负载均衡等。
sudo apt-get install nginx
修改配置
sudo rm /etc/nginx/sites-enabled/default
sudo touch /etc/nginx/sites-available/odoo
sudo ln -s /etc/nginx/sites-available/odoo /etc/nginx/sites-enabled/odoo
编辑文件
sudo nano /etc/nginx/sites-available/odoo
添加内容、保存
upstream odoo { server 127.0.0.1:8069; } server { listen 80 default; server_name 127.0.0.1; # log files access_log /var/log/nginx/odoo.access.log; error_log /var/log/nginx/odoo.error.log; # proxy buffers proxy_buffers 16 64k; proxy_buffer_size 128k; proxy_read_timeout 600s; ## default location location / { proxy_pass http://odoo; # force timeouts if the backend dies proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; proxy_redirect off; # set headers proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; } # cache some static data in memory for 60mins location ~* /web/static/ { proxy_cache_valid 60m; proxy_buffering on; expires 864000; proxy_pass http://odoo; } }
可以测试一下
sudo nginx -t
然后修改上传文件大小限制
sudo nano /etc/nginx/nginx.conf
在http段中添加
client_max_body_size 100m;
重启nginx
sudo /etc/init.d/nginx reload
设置https
待续...
利用模版生成新模块
~/odoo-dev/odoo-server/odoo-bin scaffold newmodulename /home/odoo/odoo-dev/custom/addons
安装OpenSSH并打开端口
sudo apt install openssh-server
sudo ufw allow 22
安装vim编辑器
sudo apt install vim
安装samba服务
sudo apt install samba samba-common
安装pysftp库
以便支持自动备份后,上传备份至sftp服务器。
sudo pip install pysftp
安装VScode
sudo snap install --classic vscode
安装python插件
打开VScode,Ctrl+p,输入 "ext install python",选择下载量最高的那个插件点击安装。
配置flake8
安装flake8之后写代码的时候编辑器就会提示哪里出错,代码格式不规范也会提示,ubuntu命令行:
sudo pip install flake8
安装flake8成功后,打开VScode,文件->首选项->用户设置,在settings.json文件中输入"python.linting.flake8Enabled": true
配置yapf
安装yapf之后在VScode中按Alt+Shift+F即可自动格式化代码,ubuntu命令行:
sudo pip install yapf
安装yapf成功后,打开VScode,文件->首选项->用户设置,在settings.json文件中输入"python.formatting.provider": "yapf"
如有兴趣进一步探讨,欢迎加入 maxodoo QQ 群:529322126
本文参考了:
- https://github.com/Yenthe666/InstallScript/tree/10.0
- http://blog.csdn.net/terence1212/article/details/52270210
- http://blog.csdn.net/lk274857347/article/details/52034354
- http://www.cnblogs.com/bloglkl/archive/2016/08/23/5797805.html