在Ubuntu Server 14.04上源码安装Odoo 9.0

更新Ubuntu服务器软件源

sudo apt-get update
sudo apt-get upgrade -y

安装和配置数据库服务器PostgreSQL

Install PostgreSQL Server

sudo apt-get install postgresql -y
......
Setting up postgresql-9.3 (9.3.10-0ubuntu0.14.04) ...
Creating new cluster 9.3/main ...
config /etc/postgresql/9.3/main
data   /var/lib/postgresql/9.3/main
locale en_US.UTF-8
port   5432

Creating the ODOO PostgreSQL User

sudo su - postgres -c "createuser -s odoo" 2> /dev/null || true  

Install Dependencies

Install tool packages

sudo apt-get install wget subversion git bzr bzrtools python-pip gdebi-core -y

Install 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 -y

Install python libraries

sudo pip install gdata

Install other required packages

sudo apt-get install node-clean-css -y
sudo apt-get install node-less -y
sudo apt-get install python-gevent -y

Install Wkhtmltopdf

cd /opt
sudo wget http://download.gna.org/wkhtmltopdf/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-i386.deb
sudo gdebi --n wkhtmltox-0.12.1_linux-trusty-i386.deb
sudo ln -s /usr/local/bin/wkhtmltopdf /usr/bin
sudo ln -s /usr/local/bin/wkhtmltoimage /usr/bin
sudo chmod +x /usr/bin/wkhtmltopdf  #并增加可执行属性  
wkhtmltopdf www.baidu.com ~/baidu.pdf  #打印一个网页到home目录,如果成功生成pdf则表明安装成功  
sudo apt-get install ttf-wqy-zenhei  #安装中文字体  
sudo apt-get install ttf-wqy-microhei  #安装中文字体 

Create ODOO system user

sudo adduser --system --quiet --shell=/bin/bash --home=/odoo --gecos 'ODOO' --group odoo
#The user should also be added to the sudo'ers group.
sudo adduser odoo sudo

Create Log directory

sudo mkdir /var/log/odoo
sudo chown odoo:odoo /var/log/odoo

安装Odoo服务器代码

Installing ODOO Server

sudo git clone --depth 1 --branch 9.0 https://www.github.com/odoo/odoo /odoo/odoo-server/

Create custom module directory

sudo su odoo -c "mkdir /odoo/custom"
sudo su odoo -c "mkdir /odoo/custom/addons"

Setting permissions on home folder

sudo chown -R odoo:odoo /odoo/*

Create server config file

sudo cp /odoo/odoo-server/debian/openerp-server.conf /etc/odoo-server.conf
sudo chown odoo:odoo /etc/odoo-server.conf
sudo chmod 640 /etc/odoo-server.conf

Change server config file

sudo sed -i s/"db_user = .*"/"db_user = odoo"/g /etc/odoo-server.conf
sudo sed -i s/"; admin_passwd.*"/"admin_passwd = practice"/g /etc/odoo-server.conf
sudo su root -c "echo 'logfile = /var/log/odoo/odoo-server.log' >> /etc/odoo-server.conf"
sudo su root -c "echo 'addons_path=/odoo/odoo-server/addons,/odoo/custom/addons' >> /etc/odoo-server.conf"

Create startup file

sudo su root -c "echo '#!/bin/sh' >> /odoo/odoo-server/start.sh"
sudo su root -c "echo 'sudo -u odoo /odoo/odoo-server/openerp-server --config=/etc/odoo-server.conf' >> /odoo/odoo-server/start.sh"
sudo chmod 755 /odoo/odoo-server/start.sh

Adding ODOO as a deamon (initscript)

Create init file

cat <<EOF > ~/odoo-server
#!/bin/sh
### BEGIN INIT INFO
# Provides: odoo-server
# Required-Start: \$remote_fs \$syslog
# Required-Stop: \$remote_fs \$syslog
# Should-Start: \$network
# Should-Stop: \$network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Enterprise Business Applications
# Description: ODOO Business Applications
### END INIT INFO
PATH=/bin:/sbin:/usr/bin
DAEMON=/odoo/odoo-server/openerp-server
NAME=odoo-server
DESC=odoo-server
# Specify the user name (Default: odoo).
USER=odoo
# Specify an alternate config file (Default: /etc/openerp-server.conf).
CONFIGFILE="/etc/odoo-server.conf"
# pidfile
PIDFILE=/var/run/\${NAME}.pid
# Additional options that are passed to the Daemon.
DAEMON_OPTS="-c \$CONFIGFILE"
[ -x \$DAEMON ] || exit 0
[ -f \$CONFIGFILE ] || exit 0
checkpid() {
[ -f \$PIDFILE ] || return 1
pid=\`cat \$PIDFILE\`
[ -d /proc/\$pid ] && return 0
return 1
}
case "\${1}" in
start)
echo -n "Starting \${DESC}: "
start-stop-daemon --start --quiet --pidfile \$PIDFILE \
--chuid \$USER --background --make-pidfile \
--exec \$DAEMON -- \$DAEMON_OPTS
echo "\${NAME}."
;;
stop)
echo -n "Stopping \${DESC}: "
start-stop-daemon --stop --quiet --pidfile \$PIDFILE \
--oknodo
echo "\${NAME}."
;;
restart|force-reload)
echo -n "Restarting \${DESC}: "
start-stop-daemon --stop --quiet --pidfile \$PIDFILE \
--oknodo
sleep 1
start-stop-daemon --start --quiet --pidfile \$PIDFILE \
--chuid \$USER --background --make-pidfile \
--exec \$DAEMON -- \$DAEMON_OPTS
echo "\${NAME}."
;;
*)
N=/etc/init.d/\$NAME
echo "Usage: \$NAME {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0
EOF

Security Init File

sudo mv ~/odoo-server /etc/init.d/odoo-server
sudo chmod 755 /etc/init.d/odoo-server
sudo chown root: /etc/init.d/odoo-server

Change default xmlrpc port

sudo su root -c "echo 'xmlrpc_port = 8069' >> /etc/odoo-server.conf"

Start ODOO on Startup

sudo update-rc.d odoo-server defaults
Adding system startup for /etc/init.d/odoo-server ...
/etc/rc0.d/K20odoo-server -> ../init.d/odoo-server
/etc/rc1.d/K20odoo-server -> ../init.d/odoo-server
/etc/rc6.d/K20odoo-server -> ../init.d/odoo-server
/etc/rc2.d/S20odoo-server -> ../init.d/odoo-server
/etc/rc3.d/S20odoo-server -> ../init.d/odoo-server
/etc/rc4.d/S20odoo-server -> ../init.d/odoo-server
/etc/rc5.d/S20odoo-server -> ../init.d/odoo-server

Starting Odoo Service

sudo su root -c "/etc/init.d/odoo-server start"

Done! The Odoo server is up and running. Specifications:

Port: 8069

User service: odoo

User PostgreSQL: odoo

Code location: odoo

Addons folder: /odoo/odoo-server/addons/

Start Odoo service: sudo service odoo-server start

Stop Odoo service: sudo service odoo-server stop

Restart Odoo service: sudo service odoo-server restart

端口重定向

sudo nano /etc/rc.local #编辑rc.local文件
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8069 #在文件中加入此行
sudo reboot #重启机器使更改生效

參考


https://github.com/Yenthe666/InstallScript/blob/9.0/odoo_install.sh

http://blog.csdn.net/wangnan537/article/details/48895897

 

猜你喜欢

转载自wuhuizhong.iteye.com/blog/2257048