更新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.youkuaiyun.com/wangnan537/article/details/48895897