GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer Odoo 13 sur un serveur CentOS 8

Dans ce tutoriel, nous allons vous montrer comment installer le logiciel ERP Odoo 13 sur un VPS CentOS 8. Odoo est l'une des plateformes de planification des ressources d'entreprise (ERP) les plus populaires jamais créées. Construit en Python et utilisant PostgresSQL pour sa base de données, Odoo est 100 % open-source et gratuit. Odoo dispose également d'un riche ensemble de fonctionnalités - il est livré avec une large gamme d'applications commerciales telles que CRM, POS, créateur de site Web, gestion d'entrepôt, gestion de projet, commerce électronique, marketing, facturation et comptabilité, fabrication, et bien plus encore.

Les applications Odoo sont intégrées les unes aux autres et vous permettent d'automatiser entièrement vos processus métier. La principale caractéristique d'Odoo est son interface intuitive et son éditeur glisser-déposer qui vous permet de gérer rapidement votre contenu. Odoo prend également en charge les modules tiers, vous permettant en outre d'étendre les fonctionnalités pour répondre à vos besoins précis.

Commençons par l'installation, qui ne devrait pas prendre trop de temps.

Prérequis

  • Un VPS CentOS 8 avec accès root activé (nos VPS ont tous un accès root) ou un utilisateur avec des privilèges sudo.
  • Au moins 2 Go de RAM.

Connectez-vous via SSH et mettez à jour votre serveur

Tout d'abord, vous devrez vous connecter à votre VPS CentOS 8 via SSH en tant qu'utilisateur root :

ssh root@IP_ADDRESS -p PORT_NUMBER

Remplacez IP_ADRRESS et PORT_NUMBER par les valeurs de votre VPS. IP_ADDRESS est obligatoire et PORT_NUMBER est 22 par défaut, mais peut être différent selon votre configuration.

Ensuite, exécutez les commandes suivantes pour mettre à niveau tous les packages installés sur votre VPS :

dnf update -y

Une fois tous les packages mis à jour, redémarrez votre système pour appliquer les modifications. Cela garantit une table rase sur laquelle nous installerons notre instance Odoo.

Installer les dépendances requises

Tout d'abord, vous devrez installer le package Python et d'autres dépendances Odoo sur votre système. Vous pouvez tous les installer à l'aide de la commande suivante :

dnf install python3 python3-devel git gcc redhat-rpm-config libxslt-devel bzip2-devel openldap-devel libjpeg-devel freetype-devel curl unzip -y

Une fois tous les packages installés, vous devrez installer le package wkhtmltopdf sur votre système. Wkhtmltopdf est un outil open source qui peut être utilisé pour convertir le format HTML en PDF afin qu'Odoo puisse imprimer des rapports PDF.

Vous pouvez l'installer en exécutant la commande suivante :

dnf install https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos8.x86_64.rpm

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Installer et configurer PostgreSQL

Odoo utilise PostgreSQL pour stocker ses données. Vous pouvez installer le serveur PostgreSQL avec la commande suivante :

dnf install postgresql postgresql-server postgresql-contrib -y

Une fois l'installation terminée, initialisez la base de données avec la commande suivante :

postgresql-setup initdb

Vous devriez obtenir le résultat suivant :

* Initializing database in '/var/lib/pgsql/data'
* Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log

Ensuite, démarrez le service PostgreSQL et activez-le pour qu'il démarre au démarrage avec la commande suivante :

systemctl start postgresql
systemctl enable postgresql

Ensuite, connectez-vous au shell PostgreSQL et créez un nouvel utilisateur PostgreSQL avec la commande suivante :

su - postgres -c "createuser -s odoo13"

Installer et configurer Odoo 13

Avant de commencer, créez un utilisateur distinct dans CentOS que nous utiliserons pour exécuter le service Odoo.

useradd -m -U -r -d /opt/odoo13 -s /bin/bash odoo13

Remarque :Assurez-vous que le nom d'utilisateur doit être le même que l'utilisateur PostgreSQL.

Ensuite, connectez-vous avec votre utilisateur odoo13 et téléchargez Odoo 13 depuis le référentiel GitHub :

su - odoo13
git clone https://www.github.com/odoo/odoo --depth 1 --branch 13.0 /opt/odoo13/odoo

Vous devriez obtenir le résultat suivant :

Cloning into '/opt/odoo13/odoo'...
warning: redirecting to https://github.com/odoo/odoo.git/
remote: Enumerating objects: 28242, done.
remote: Counting objects: 100% (28242/28242), done
remote: Compressing objects: 100% (23893/23893), done.
Receiving objects: 96% (27370/28242), 110.95 MiB | 13.39 MiB/s
remote: Total 28242 (delta 8481), reused 10433 (delta 3462), pack-reused 0
Receiving objects: 100% (28242/28242), 120.16 MiB | 9.46 MiB/s, done.
Resolving deltas: 100% (8481/8481), done.
Checking out files: 100% (25288/25288), done.

Ensuite, changez votre répertoire de travail actuel en /opt/odoo13 et créez un nouvel environnement virtuel Python avec la commande suivante :

cd /opt/odoo13
python3 -m venv odooenv

Ensuite, activez l'environnement virtuel avec la commande suivante :

source odooenv/bin/activate

Une fois cela fait, installez tous les modules Python requis avec la commande suivante :

pip3 install -r odoo/requirements.txt

Après avoir installé tous les modules, désactivez l'environnement avec la commande suivante :

deactivate

Ensuite, créez un nouveau répertoire pour stocker les addons personnalisés :

mkdir /opt/odoo13/odoo-custom-addons

De là, quittez l'utilisateur Odoo13 avec la commande suivante :
exit

Enfin, créez un nouveau fichier de configuration Odoo 13 avec les détails de votre base de données, votre mot de passe principal et le chemin des addons :

nano /etc/odoo13.conf

Ajoutez les lignes suivantes au fichier :

[options]
admin_passwd = your-secure-password
db_host = False
db_port = False
db_user = odoo13
db_password = False
addons_path = /opt/odoo13/odoo/addons, /opt/odoo13/odoo-custom-addons

Assurez-vous de définir un mot de passe fort. Enregistrez et fermez le fichier.

Créer un fichier d'unité Systemd pour Odoo 13

Utiliser systemd pour démarrer et arrêter facilement votre instance Odoo est très pratique. Cette étape n'est pas obligatoire, mais elle ajoute une excellente fonctionnalité de qualité de vie qui est agréable à avoir et qui rend la gestion d'Odoo beaucoup plus facile.

Vous pouvez créer le service avec la commande suivante :

nano /etc/systemd/system/odoo13.service

Ouvrez le fichier et ajoutez les lignes suivantes :

[Unit]
Description=Odoo13
Requires=postgresql.service
After=network.target postgresql.service
[Service]
Type=simple
SyslogIdentifier=odoo13
PermissionsStartOnly=true
User=odoo13
Group=odoo13
ExecStart=/opt/odoo13/venv/bin/python3 /opt/odoo13/odoo/odoo-bin -c /etc/odoo13.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target

Enregistrez et fermez le fichier puis rechargez le démon systemd avec la commande suivante :

systemctl daemon-reload

Ensuite, démarrez le service Odoo 13 et activez-le au démarrage avec la commande suivante :

systemctl start odoo13
systemctl enable odoo13

Vous pouvez vérifier l'état d'Odoo 13 avec la commande suivante :

systemctl status odoo13

Vous devriez obtenir le résultat suivant :

● odoo13.service - Odoo13
Loaded: loaded (/etc/systemd/system/odoo13.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2020-05-24 08:35:45 EDT; 3s ago
Main PID: 23874 (python3)
Tasks: 4 (limit: 25028)
Memory: 60.8M
CGroup: /system.slice/odoo13.service
└─23874 /opt/odoo13/venv/bin/python3 /opt/odoo13/odoo/odoo-bin -c /etc/odoo13.conf
May 24 08:35:45 centos8 systemd[1]: Started Odoo13.
May 24 08:35:46 centos8 odoo13[23874]: /opt/odoo13/venv/lib64/python3.6/site-packages/psycopg2/__init__.py:144: UserWarning: The psycopg2 whee>
May 24 08:35:46 centos8 odoo13[23874]: """)
May 24 08:35:46 centos8 odoo13[23874]: 2020-05-24 12:35:46,298 23874 INFO ? odoo: Odoo version 13.0
May 24 08:35:46 centos8 odoo13[23874]: 2020-05-24 12:35:46,299 23874 INFO ? odoo: Using configuration file at /etc/odoo13.conf
May 24 08:35:46 centos8 odoo13[23874]: 2020-05-24 12:35:46,300 23874 INFO ? odoo: addons paths: ['/opt/odoo13/odoo/odoo/addons', '/opt/odoo13/>
May 24 08:35:46 centos8 odoo13[23874]: 2020-05-24 12:35:46,300 23874 INFO ? odoo: database: odoo13@default:default
May 24 08:35:46 centos8 odoo13[23874]: 2020-05-24 12:35:46,893 23874 INFO ? odoo.addons.base.models.ir_actions_report: Will use the Wkhtmltopd>
May 24 08:35:47 centos8 odoo13[23874]: 2020-05-24 12:35:47,367 23874 INFO ? odoo.service.server: HTTP service (werkzeug) running on centos8:80>
lines 1-18/18 (END)

À ce stade, Odoo est en cours d'exécution et écoute sur le port 8069. Vous pouvez déjà y accéder depuis un navigateur en spécifiant l'adresse IP et le port pour Odoo.

Configurer Nginx en tant que proxy inverse

C'est une bonne idée de configurer Nginx comme proxy inverse pour Odoo. Ceci est fait pour que vous puissiez accéder à l'instance Odoo sans avoir à spécifier le port à chaque fois. Nginx est un serveur Web populaire axé sur la personnalisation et la polyvalence.

Tout d'abord, installez Nginx avec la commande suivante :

dnf install nginx -y

Une fois installé, créez un nouveau fichier de configuration d'hôte virtuel Nginx :

nano /etc/nginx/conf.d/odoo13.example.conf

Ajoutez les lignes suivantes :

upstream odoo {
server 127.0.0.1:8069;
}
upstream odoochat {
server 127.0.0.1:8072;
}
server {
listen 80;
server_name odoo13.example.com;
proxy_read_timeout 720s;
proxy_connect_timeout 720s;
proxy_send_timeout 720s;
# Proxy headers
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
# log files
access_log /var/log/nginx/odoo13.access.log;
error_log /var/log/nginx/odoo13.error.log;
# Handle longpoll requests
location /longpolling {
proxy_pass http://odoochat;
}
# Cache static files
location ~* /web/static/ {
proxy_cache_valid 200 90m;
proxy_buffering on;
expires 864000;
proxy_pass http://odoo;
}
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
gzip on;
}

Vous devez remplacer "exemple.com" par votre nom de domaine enregistré.

Enregistrez et fermez le fichier. Ensuite, vous devrez configurer hash_bucket_site dans le fichier de configuration par défaut de Nginx.

Ouvrez le fichier de configuration par défaut de Nginx comme indiqué ci-dessous :

nano /etc/nginx/nginx.conf

Ajoutez la ligne suivante sous la ligne http { :

server_names_hash_bucket_size 64;

Enregistrez et fermez le fichier. Ensuite, vérifiez Nginx pour toute erreur de syntaxe avec la commande suivante :

nginx -t

Vous devriez obtenir le résultat suivant :

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Enfin, démarrez le service Nginx et activez-le au démarrage avec la commande suivante :

systemctl start nginx
systemctl enable nginx

Ensuite, vous devrez également configurer Odoo pour utiliser le proxy. Vous pouvez le faire en éditant le fichier /etc/odoo13.conf :

nano /etc/odoo13.conf

Ajoutez la ligne suivante à la fin du fichier :

proxy_mode = True

Enregistrez et fermez le fichier, puis redémarrez le service Odoo 13 pour mettre en œuvre les modifications :

systemctl restart odoo13

Sécuriser Odoo 13 avec Let's Encrypt

Il est recommandé de sécuriser l'instance Odoo avec Let's Encrypt SSL. Ce n'est pas une étape obligatoire, mais elle fournit des connexions sécurisées pour votre instance Odoo.

Tout d'abord, installez le client Certbot dans votre système pour gérer le SSL :

wget https://dl.eff.org/certbot-auto
mv certbot-auto /usr/local/bin/certbot-auto
chmod 0755 /usr/local/bin/certbot-auto

Maintenant, exécutez la commande suivante pour obtenir et installer un certificat SSL pour votre site Web Odoo 13. Remplacez "exemple.com" par votre nom de domaine enregistré.

certbot-auto --nginx -d odoo13.example.com

La commande ci-dessus installera d'abord toutes les dépendances requises sur votre serveur. Une fois installé, il vous sera demandé de fournir une adresse e-mail
et d'accepter les conditions d'utilisation comme indiqué ci-dessous :

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Enter email address (used for urgent renewal and security notices)
(Enter 'c' to cancel): [email protected]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: N

Faites votre choix et appuyez sur Entrée continuer. Une fois le certificat installé, vous devriez voir la sortie suivante :

Obtaining a new certificate
Performing the following challenges:
http-01 challenge for odoo13.example.com
Waiting for verification...
Cleaning up challenges
Deploying Certificate to VirtualHost /etc/nginx/nginx.conf
Redirecting all traffic on port 80 to ssl in /etc/nginx/nginx.conf
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://odoo13.example.com
You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=odoo13.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
IMPORTANT NOTES:
- Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/odoo13.example.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/odoo13.example.com/privkey.pem
Your cert will expire on 2020-08-22. To obtain a new or tweaked
version of this certificate in the future, simply run certbot-auto
again with the "certonly" option. To non-interactively renew *all*
of your certificates, run "certbot-auto renew"
- If you like Certbot, please consider supporting our work by:
Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate
Donating to EFF: https://eff.org/donate-le

À ce stade, votre instance Odoo 13 est sécurisée avec Let's Encrypt SSL.

Accéder à l'instance Odoo 13

Maintenant, ouvrez votre navigateur Web et tapez l'URL https://odoo13.example.com . Vous devriez voir la page suivante :

Fournissez votre mot de passe principal, les détails de la base de données, votre adresse e-mail et votre mot de passe avant de cliquer sur Créer une base de données bouton. Vous devriez voir le tableau de bord Odoo 13 sur la page suivante :

Félicitations, si vous avez suivi attentivement nos instructions dans ce tutoriel, vous aurez installé avec succès le dernier Odoo 13 sur votre VPS CentOS 8. Vous pouvez créer votre première base de données et commencer à utiliser la dernière version d'Odoo 13.

Bien sûr, vous n'êtes pas obligé d'installer Odoo 13 sur CentOS 8 si vous utilisez l'un de nos services d'hébergement VPS Odoo, auquel cas vous pouvez simplement demander à notre équipe d'administrateurs Linux experts d'installer et de configurer Odoo 13 pour vous. Ils sont disponibles 24h/24 et 7j/7 et prendront immédiatement en charge votre demande. Nous éliminons les conjectures lors de l'installation de votre plate-forme Odoo - dites-nous simplement ce dont vous avez besoin et ce sera fait.

PS . Si vous avez aimé cet article sur l'installation d'Odoo 13 sur CentOS 8, partagez-le avec vos amis sur les réseaux sociaux en utilisant les raccourcis de partage ci-dessous, ou laissez simplement une réponse dans la section des commentaires. Merci.


Cent OS
  1. Comment installer le serveur Minecraft sur CentOS 7

  2. Comment installer le serveur Teamspeak 3 sur CentOS 8

  3. Comment installer Odoo 9 sur CentOS 7

  4. Comment installer Odoo 12 sur CentOS 7

  5. Comment installer Odoo 13 sur CentOS 8

Comment installer Nginx sur CentOS

Comment installer MySQL 8 sur CentOS 8

Comment installer Shoutcast Server sur CentOS 8

Comment installer Lighttpd sur CentOS

Comment installer VestaCP sur CentOS 6

Comment installer Odoo sur CentOS 7