En esta lección te mostraremoscómo instalar Odoo 9 en Ubuntu 14.04 VPS…
Odoo es una colección de aplicaciones comerciales escritas en lenguaje Python. En la versión 9 de Odoo, hay cambios significativos en la sección de contabilidad. También se enumeran algunas características nuevas, como un módulo de contabilidad de reescritura, un módulo de Voz sobre IP, un foro mejorado con integración de redes sociales, mucho mejor envío masivo de aplicaciones, etc.
La instalación de Odoo 9 en Ubuntu 14.04 en un VPS debería llevar unos 30 minutos si sigue los sencillos pasos que se indican a continuación. Actualice los paquetes del sistema operativo en su servidor virtual usando los siguientes comandos:
$ sudo apt-get update $ sudo apt-get upgrade
En este tutorial usaremos un script.
Cree un archivo y copie el siguiente código en un nuevo archivo (por ejemplo, 'odoo_install.sh').
$ sudo nano odoo_install.sh
#!/bin/bash ################################################################################ # Скрипт установки: ODOO Saas4/Trunk server on Ubuntu 14.04 LTS #------------------------------------------------------------------------------- # # Этот скрипт установит на сервер Ubuntu 14.04. Он может установить несколько экземпляров # в Ubuntu из-за разных xmlrpc_ports #------------------------------------------------------------------------------- # USAGE: # # odoo-install # # Пример: # ./odoo-install # ################################################################################ ##фиксированные параметры #odoo OE_USER="odoo" OE_HOME="/$OE_USER" OE_HOME_EXT="/$OE_USER/$OE_USER-server" #Порт по умолчанию, где экземпляр будет работать (если вы пользуетесь командной C в терминале) #Установите значение True, если вы хотите установить его, false, если он вам не нужен или он уже установлен. INSTALL_WKHTMLTOPDF="True" #Установка порта по умолчанию для Odoo (вам все равно придется использовать -с /etc/odoo-server.conf, чтобы использовать это.) OE_PORT="8069" #Выбрать с версии, которую вы хотите установить. Например: 9.0, 8.0, 7.0 или саас-6. При использовании "trunk" мастер версия будет установленна. #IMPORTANT! This script contains extra libraries that are specifically needed for Odoo 9.0 OE_VERSION="9.0" #задайте пароль superadmin OE_SUPERADMIN="admin" OE_CONFIG="$OE_USER-server" #-------------------------------------------------- # Обновление сервера #-------------------------------------------------- echo -e "n---- Обновление сервера ----" sudo apt-get update sudo apt-get upgrade -y #-------------------------------------------------- # Установка PostgreSQL #-------------------------------------------------- echo -e "n---- Установка сервера PostgreSQL ----" sudo apt-get install postgresql -y echo -e "n---- PostgreSQL $PG_VERSION Settings ----" sudo sed -i s/"#listen_addresses="localhost""https://andreyex.ru/"listen_addresses="*""/g /etc/postgresql/9.3/main/postgresql.conf echo -e "n---- Создание пользователя ODOO PostgreSQL ----" sudo su - postgres -c "createuser -s $OE_USER" 2> /dev/null || true #-------------------------------------------------- # Установка зависимостей #-------------------------------------------------- echo -e "n---- Установка пакетов инструментов ----" sudo apt-get install wget subversion git bzr bzrtools python-pip -y echo -e "n---- Установить пакеты Python ----" 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 echo -e "n---- установка библиотек Python ----" sudo pip install gdata echo -e "n--- Установите другие требуемые пакеты" sudo apt-get install node-clean-css sudo apt-get install node-less sudo apt-get install python-gevent #-------------------------------------------------- # Установите Wkhtmltopdf при необходимости #-------------------------------------------------- if [ $INSTALL_WKHTMLTOPDF = "True" ]; then echo -e "n---- Установка wkhtml и размещение на правильном месте для Odoo 8 ----" sudo wget https://download.gna.org/wkhtmltopdf/0.12/0.12.1/wkhtmltox-0.12.1_linux-trusty-amd64.deb sudo dpkg -i wkhtmltox-0.12.1_linux-trusty-amd64.deb sudo cp /usr/local/bin/wkhtmltopdf /usr/bin sudo cp /usr/local/bin/wkhtmltoimage /usr/bin else echo "Wkhtmltopdf не установлен в связи с выбором пользователя!" fi echo -e "n---- Создание системного пользователя для ODOO ----" sudo adduser --system --quiet --shell=/bin/bash --home=$OE_HOME --gecos 'ODOO' --group $OE_USER #Пользователь должен быть добавлен в группу sudo. sudo adduser $OE_USER sudo echo -e "n---- Создание каталога логов ----" sudo mkdir /var/log/$OE_USER sudo chown $OE_USER:$OE_USER /var/log/$OE_USER #-------------------------------------------------- # Установка ODOO #-------------------------------------------------- echo -e "n==== Установка сервера ODOO ====" sudo git clone --branch $OE_VERSION https://www.github.com/odoo/odoo $OE_HOME_EXT/ echo -e "n---- Создание пользовательских каталогов ----" sudo su $OE_USER -c "mkdir $OE_HOME/custom" sudo su $OE_USER -c "mkdir $OE_HOME/custom/addons" echo -e "n---- Настройка прав доступа на домашнюю папку ----" sudo chown -R $OE_USER:$OE_USER $OE_HOME/* echo -e "* Создать файл конфигурации сервера" sudo cp $OE_HOME_EXT/debian/openerp-server.conf /etc/$OE_CONFIG.conf sudo chown $OE_USER:$OE_USER /etc/$OE_CONFIG.conf sudo chmod 640 /etc/$OE_CONFIG.conf echo -e "* Файл меняет Настройки сервера" sudo sed -i s/"db_user = .*"https://andreyex.ru/"db_user = $OE_USER"/g /etc/$OE_CONFIG.conf sudo sed -i s/"; admin_passwd.*"https://andreyex.ru/"admin_passwd = $OE_SUPERADMIN"/g /etc/$OE_CONFIG.conf sudo su root -c "echo 'logfile = /var/log/$OE_USER/$OE_CONFIG$1.log' >> /etc/$OE_CONFIG.conf" sudo su root -c "echo 'addons_path=$OE_HOME_EXT/addons,$OE_HOME/custom/addons' >> /etc/$OE_CONFIG.conf" echo -e "* Создать файл автозагрузки" sudo su root -c "echo '#!/bin/sh' >> $OE_HOME_EXT/start.sh" sudo su root -c "echo 'sudo -u $OE_USER $OE_HOME_EXT/openerp-server --config=/etc/$OE_CONFIG.conf' >> $OE_HOME_EXT/start.sh" sudo chmod 755 $OE_HOME_EXT/start.sh #-------------------------------------------------- # Добавить как демон ODOO (initscript) #-------------------------------------------------- echo -e "* Create init file" echo '#!/bin/sh' >> ~/$OE_CONFIG echo '### BEGIN INIT INFO' >> ~/$OE_CONFIG echo '# Provides: $OE_CONFIG' >> ~/$OE_CONFIG echo '# Required-Start: $remote_fs $syslog' >> ~/$OE_CONFIG echo '# Required-Stop: $remote_fs $syslog' >> ~/$OE_CONFIG echo '# Should-Start: $network' >> ~/$OE_CONFIG echo '# Should-Stop: $network' >> ~/$OE_CONFIG echo '# Default-Start: 2 3 4 5' >> ~/$OE_CONFIG echo '# Default-Stop: 0 1 6' >> ~/$OE_CONFIG echo '# Short-Description: Enterprise Business Applications' >> ~/$OE_CONFIG echo '# Description: ODOO Business Applications' >> ~/$OE_CONFIG echo '### END INIT INFO' >> ~/$OE_CONFIG echo 'PATH=/bin:/sbin:/usr/bin' >> ~/$OE_CONFIG echo "DAEMON=$OE_HOME_EXT/openerp-server" >> ~/$OE_CONFIG echo "NAME=$OE_CONFIG" >> ~/$OE_CONFIG echo "DESC=$OE_CONFIG" >> ~/$OE_CONFIG echo '' >> ~/$OE_CONFIG echo '# Specify the user name (Default: odoo).' >> ~/$OE_CONFIG echo "USER=$OE_USER" >> ~/$OE_CONFIG echo '' >> ~/$OE_CONFIG echo '# Specify an alternate config file (Default: /etc/openerp-server.conf).' >> ~/$OE_CONFIG echo "CONFIGFILE="/etc/$OE_CONFIG.conf"" >> ~/$OE_CONFIG echo '' >> ~/$OE_CONFIG echo '# pidfile' >> ~/$OE_CONFIG echo 'PIDFILE=/var/run/$NAME.pid' >> ~/$OE_CONFIG echo '' >> ~/$OE_CONFIG echo '# Additional options that are passed to the Daemon.' >> ~/$OE_CONFIG echo 'DAEMON_OPTS="-c $CONFIGFILE"' >> ~/$OE_CONFIG echo '[ -x $DAEMON ] || exit 0' >> ~/$OE_CONFIG echo '[ -f $CONFIGFILE ] || exit 0' >> ~/$OE_CONFIG echo 'checkpid() {' >> ~/$OE_CONFIG echo '[ -f $PIDFILE ] || return 1' >> ~/$OE_CONFIG echo 'pid=`cat $PIDFILE`' >> ~/$OE_CONFIG echo '[ -d /proc/$pid ] && return 0' >> ~/$OE_CONFIG echo 'return 1' >> ~/$OE_CONFIG echo '}' >> ~/$OE_CONFIG echo '' >> ~/$OE_CONFIG echo 'case "${1}" in' >> ~/$OE_CONFIG echo 'start)' >> ~/$OE_CONFIG echo 'echo -n "Starting ${DESC}: "' >> ~/$OE_CONFIG echo 'start-stop-daemon --start --quiet --pidfile ${PIDFILE} ' >> ~/$OE_CONFIG echo '--chuid ${USER} --background --make-pidfile ' >> ~/$OE_CONFIG echo '--exec ${DAEMON} -- ${DAEMON_OPTS}' >> ~/$OE_CONFIG echo 'echo "${NAME}."' >> ~/$OE_CONFIG echo ';;' >> ~/$OE_CONFIG echo 'stop)' >> ~/$OE_CONFIG echo 'echo -n "Stopping ${DESC}: "' >> ~/$OE_CONFIG echo 'start-stop-daemon --stop --quiet --pidfile ${PIDFILE} ' >> ~/$OE_CONFIG echo '--oknodo' >> ~/$OE_CONFIG echo 'echo "${NAME}."' >> ~/$OE_CONFIG echo ';;' >> ~/$OE_CONFIG echo '' >> ~/$OE_CONFIG echo 'restart|force-reload)' >> ~/$OE_CONFIG echo 'echo -n "Restarting ${DESC}: "' >> ~/$OE_CONFIG echo 'start-stop-daemon --stop --quiet --pidfile ${PIDFILE} ' >> ~/$OE_CONFIG echo '--oknodo' >> ~/$OE_CONFIG echo 'sleep 1' >> ~/$OE_CONFIG echo 'start-stop-daemon --start --quiet --pidfile ${PIDFILE} ' >> ~/$OE_CONFIG echo '--chuid ${USER} --background --make-pidfile ' >> ~/$OE_CONFIG echo '--exec ${DAEMON} -- ${DAEMON_OPTS}' >> ~/$OE_CONFIG echo 'echo "${NAME}."' >> ~/$OE_CONFIG echo ';;' >> ~/$OE_CONFIG echo '*)' >> ~/$OE_CONFIG echo 'N=/etc/init.d/${NAME}' >> ~/$OE_CONFIG echo 'echo "Usage: ${NAME} {start|stop|restart|force-reload}" >&2' >> ~/$OE_CONFIG echo 'exit 1' >> ~/$OE_CONFIG echo ';;' >> ~/$OE_CONFIG echo '' >> ~/$OE_CONFIG echo 'esac' >> ~/$OE_CONFIG echo 'exit 0' >> ~/$OE_CONFIG echo -e "* Security Init File" sudo mv ~/$OE_CONFIG /etc/init.d/$OE_CONFIG sudo chmod 755 /etc/init.d/$OE_CONFIG sudo chown root: /etc/init.d/$OE_CONFIG echo -e "* Change default xmlrpc port" sudo su root -c "echo 'xmlrpc_port = $OE_PORT' >> /etc/$OE_CONFIG.conf" echo -e "* Добавить ODOO в автозагрузку" sudo update-rc.d $OE_CONFIG defaults echo -e "* Запуск сервиса Odoo" sudo su root -c "/etc/init.d/$OE_CONFIG start" echo "-----------------------------------------------------------" echo "Все! Сервер с запущен и работает. Спецификации:" echo "Порт: $OE_PORT" echo "User service: $OE_USER" echo "User PostgreSQL: $OE_USER" echo "Code location: $OE_USER" echo "Папка аддонов: $OE_USER/$OE_CONFIG/addons/" echo "Запущен сервис Odoo: sudo service $OE_CONFIG start" echo "Остановлен сервис Odoo: sudo service $OE_CONFIG stop" echo "Перезапущен сервис Odoo: sudo service $OE_CONFIG restart" echo "-----------------------------------------------------------"
Hacer el archivo ejecutable:
$ sudo chmod +x odoo_install.sh
Ejecute el script y espere hasta que Odoo esté completamente instalado:
$ sudo ./odoo_install.sh
Edite el archivo de configuración de Odoo y establezca una contraseña de administrador principal:
$ sudo nano /etc/odoo-server.conf
admin_passwd = UseStrongPassw0rd
Cambie la codificación de la plantilla a UTF8 ejecutando los siguientes comandos:
$ su - postgres $ psql $ update pg_database set datallowconn = TRUE where datname="template0"; $ c template0 $ update pg_database set datistemplate = FALSE where datname="template1"; $ drop database template1; $ create database template1 with template = template0 encoding = 'UTF8'; $ update pg_database set datistemplate = TRUE where datname="template1"; $ c template1 $ update pg_database set datallowconn = FALSE where datname="template0"; $ q
Reinicie el servidor PostgreSQL para que los cambios surtan efecto:
$ /etc/init.d/postgresql restart
Luego reinicie el servicio Odoo:
$ /etc/init.d/odoo-server restart
Abra https: // your-server-IP: 8069 / web / database / manager y cree una nueva base de datos. Después de crear la base de datos, será redirigido al panel de administración.
Inicie sesión como usuario con derechos de administrador, cambie su contraseña, configure Odoo, instale los módulos necesarios, etc.
Eso es todo. Ha instalado con éxito Odoo 9 en su Ubuntu 14.04 VPS.