Vous pouvez également utiliser Hebus pour installer automatiquement Odoo ici : INSTALLATION AUTOMATIQUE DE ODOO
Nous allons installer Odoo sur une nouvelle machine CENTOS 7 , dans un environnement virtuel depuis les sources Github.
Installation de Odoo :
1 : Installation de PostgreSQL depuis le repo officiel :
rpm -Uvh http://yum.postgresql.org/9.3/redhat/rhel-7-x86_64/pgdg-centos93-9.3-1.noarch.rpm
yum -y install postgresql93 postgresql93-server postgresql93-devel --disablerepo=* --enablerepo=pgdg93
Initialissation de la base de données et activation du service au redémarrage de la machine :
/usr/pgsql-9.3/bin/postgresql93-setup initdb
systemctl enable postgresql-9.3.service
systemctl start postgresql-9.3
création de l’utilisateur odoo :
su - postgres -c "createuser -s odoo" 2> /dev/null || true
installation des packages necessaires :
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel
libpcap-devel xz-devel git libpng libjpeg libXext curl xorg-x11-font-utils fontconfig python-virtualenv libevent-devel libxml2-
devel libxslt-devel openldap-devel openjpeg-devel freetype-devel libjpeg-turbo-devel libtiff-devel kernel-devel xorg-x11-fonts-
75dpi xorg-x11-fonts-Type1
Activer EPEL :
wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
rpm -ivh epel-release-7-5.noarch.rpm
installation de wkhtmltopdf pour pouvoir imprimer des documents dans Odoo :
yum --enablerepo=epel install wkhtmltopdf
wget http://downloads.sourceforge.net/wkhtmltopdf/wkhtmltox-0.12.2.1_linux-centos7-amd64.rpm
rpm -ivh wkhtmltox-0.12.2.1_linux-centos7-amd64.rpm
Installation de pip :
yum --enablerepo=epel install python-pip
Clone de Odoo 8 depuis Github dans le répertoire /opt/odoo
git clone --branch 8.0 https://www.github.com/odoo/odoo /opt/odoo
( pour faire un update de l’installation plus tard , il suffit de faire : git pull )
Création de l’environement virtuel pour Odoo:
useradd odoo
chown -R odoo: /opt/odoo
su - odoo
Installation des packages nécessaires :
/bin/virtualenv odoo
source odoo/bin/activate
PATH=$PATH:/usr/pgsql-9.3/bin
pip install -r /opt/odoo/requirements.txt
exit
Fichier de configuration et systemctl :
vi /etc/odoo-server.conf
Ensuite insérer ceci dans le fichier :
[options]
admin_passwd = admin
db_host = False
db_port = False
db_user = odoo
db_password = False
addons_path = /opt/odoo/addons
without-demo=all
no-xmlrpc = True
no-xmlrpcs = True
no-netrpc = True
log_db = False
log_handler = ['['["[\':INFO\']"]']']
log_level = info
logfile = False
login_message = False
logrotate = True
syslog = False
Pour systemctl :
vi /usr/lib/systemd/system/odoo.service
[Unit]
Description=Odoo 8.0 ERP and CRM server
After=postgresql-9.3.service
[Service]
Type=simple
User=odoo
Group=odoo
ExecStart=/home/odoo/odoo/bin/python /opt/odoo/openerp-server --config=/etc/odoo-server.conf
[Install]
WantedBy=multi-user.target
installation de firewalld pour les images cloud CENTOS :
yum install firewalld
service firewalld start
Ouverture du port 8069 ( si vous installez pas nginx ! )
firewall-cmd --zone=public --add-port=8069/tcp --permanent
firewall-cmd --reload
Si Nginx va être installé :
firewall-cmd --zone=public --add-port=443/tcp --permanent
firewall-cmd --reload
Enfin démarer Odoo
systemctl enable odoo.service
systemctl start odoo
Si vous avec ouvert le port 8069 Odoo est accessible à : http://<adresse_ip_de_votre_serveur>:8069
Installation de Nginx :
yum install nginx
systemctl enable nginx
création du répertoir pour le certificat ssl :
mkdir /etc/nginx/ssl
cd /etc/nginx/ssl
Pour les certificat approuvé par une autoritée :
a) génération du CSR :
openssl req -new -newkey rsa:2048 -nodes -out VOTRE_NOM_DE_DOMAINE.csr -keyout VOTRE_NOM_DE_DOMAINE.key -subj
"/C=INTIALES_DU_PAYS/ST=REGION /O=VOTRE_ORGANISATION SPRL/CN=VOTRE.NOMDE.DOMAINE"
vous pouvez également en généré un à l’aide de cet outil openssl
b) création du PEM
Une fois que vous avez reçu votre certificat en retour de l’autorité signataire, copié le contenu du fichier VOTRE_NOM_DE_DOMAINE.pem que vous avez reçu de leur part dans :
vi /etc/nginx/ssl/VOTRE_NOM_DE_DOMAINE.pem
ensuite créer le fichier de configuration Nginx :
vi /etc/nginx/conf.d/votresiteodoo.conf
et insérez y :
upstream oddo {
server 127.0.0.1:8069;
}
server {
listen 443 default;
server_name VOTRE_NOM_DE_DOMAINE.COM;
exemple :
server_name odoo.com;
access_log /var/log/nginx/oddo.access.log;
error_log /var/log/nginx/oddo.error.log;
ssl on;
#### Il s'agit du nom des certificats SSL créer précédement
ssl_certificate /etc/nginx/ssl/VOTRE_NOM_DE_DOMAINE.PEM;
ssl_certificate_key /etc/nginx/ssl/VOTRE_NOM_DE_DOMAINE.key;
keepalive_timeout 60;
ssl_ciphers HIGH:!ADH:!MD5;
ssl_protocols SSLv3 TLSv1;
ssl_prefer_server_ciphers on;
proxy_buffers 16 64k;
proxy_buffer_size 128k;
location / {
proxy_pass http://oddo;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
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;
}
location ~* /web/static/ {
proxy_cache_valid 200 60m;
proxy_buffering on;
expires 864000;
proxy_pass http://oddo;
}
}
server {
listen 80;
server_name VOTRE_NOM_DE_DOMAINE.COM;
exemple :
server_name odoo.com;
add_header Strict-Transport-Security max-age=2592000;
rewrite ^/.*$ https://$host$request_uri? permanent;
}
service nginx restart
Pour les certificat self signed :
cd /etc/nginx/ssl
openssl genrsa -des3 -passout pass:x -out server.pass.key 2048
openssl rsa -passin pass:x -in server.pass.key -out server.key
rm server.pass.key
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
ensuite créer le fichier de configuration Nginx :
vi /etc/nginx/conf.d/votresiteodoo.conf
et insérez y :
upstream oddo {
server 127.0.0.1:8069;
}
server {
listen 443 default;
server_name VOTRE_NOM_DE_DOMAINE.COM;
exemple :
server_name odoo.com;
access_log /var/log/nginx/oddo.access.log;
error_log /var/log/nginx/oddo.error.log;
ssl on;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
keepalive_timeout 60;
ssl_ciphers HIGH:!ADH:!MD5;
ssl_protocols SSLv3 TLSv1;
ssl_prefer_server_ciphers on;
proxy_buffers 16 64k;
proxy_buffer_size 128k;
location / {
proxy_pass http://oddo;
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
proxy_redirect off;
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;
}
location ~* /web/static/ {
proxy_cache_valid 200 60m;
proxy_buffering on;
expires 864000;
proxy_pass http://oddo;
}
}
server {
listen 80;
server_name VOTRE_NOM_DE_DOMAINE.COM;
exemple :
server_name odoo.com;
add_header Strict-Transport-Security max-age=2592000;
rewrite ^/.*$ https://$host$request_uri? permanent;
}
service nginx restart
Pour tout le monde :
Odoo est accessible à : https://<adresse_ip_de_votre_serveur>