Flectra est un logiciel ERP gratuit et open source qui offre beaucoup de fontionnalite et de personnalisation qui peut répondre aux besoins de votre entreprise.
Flectra est un fork d'Odoo Community et son objectif principal était d'implémenter de nombreuses fonctionnalités d'Odoo Enterprise tout en le gardant ouvert à l'extension et à la modification.
Flectra est un fork d'Odoo Community et son objectif principal était d'implémenter de nombreuses fonctionnalités d'Odoo Enterprise tout en le gardant ouvert à l'extension et à la modification.
Flectra est developpe en utilisant le langage de programmation Python et PostgreSQL comme SGBD. Ce logiciel vise à aider presque tout le monde, qu’il s’agisse d’une petite startup ou d’une grande entreprise. Flectra a une interface simple et conviviale et une conception modulaire qui vous permet d'ajouter ou de supprimer des outils pour le faire fonctionner comme vous en avez besoin.
Dans cet article , nous expliquerons comment installer Flectra sur un VPS Ubuntu 20.04 en utilisant Nginx comme proxy inverse. Le proxy inverse vous permettra d'accéder à votre instance Flectra à partir d'un nom de domaine tout en utilisant également le numéro de port par défaut. Commençons.
Prerequis:
Un serveur VPS avec Ubuntu 20.04 fraîchement installé avec un accès root activé ou un utilisateur avec des privilèges root.
Minimum 2 Go de RAM , mais il est recommande d'avoir 3Go au Min. Pour cela, nous utiliserons notre plan VPS SSD .
1 Vcore
2Go de RAM
20 Go de disque SSD.
Connectez-vous via SSH avec un access root et mettez à jour votre système:apt-get update -y apt-get upgrade -y
Une fois tous les packages mis à jour, redémarrez votre système pour vous assurer que tous les packages utilisent la dernière version.
Installer les dépendances requises
Pour commencer, vous devrez installer le package Python et quelques autres dépendances Flectra dans votre système. Vous pouvez tous les installer à l'aide de la commande suivante:
apt-get install gcc python3-venv build-essentiel python3-oreiller python3-roue python3-lxml python3-dev python3-pip python3-setuptools npm nodejs git gdebi libldap2-dev libsasl2-dev libxml2-dev libxslt1-dev libjpeg-devpq- dev -y
Une fois toutes les dépendances installées, vous devrez installer l'outil wkhtmltopdf dans votre système.
Vous pouvez le télécharger et l'installer avec la commande suivante:
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb
apt install ./wkhtmltox_0.12.5-1.bionic_amd64.deb
Une fois installé, vous pouvez passer à l'étape suivante.
Installez PostgreSQL
Flectra a besoin de PostgreSQL pour stocker ses données dans une base de données. Vous pouvez l'installer avec la commande suivante:
apt-get installer postgresql -y
Une fois l'installation terminée, utilisez l'utilitaire PostgreSQL et créez un utilisateur pour Flectra avec la commande suivante. Nous avons nommé notre utilisateur flectra, mais vous pouvez utiliser le nom de votre choix:
su - postgres -c "createuser -s flectra"
Installez Flectra
Tout d'abord, créez un utilisateur distinct pour Flectra avec la commande suivante. Le nom de cet utilisateur doit être le même que celui de votre utilisateur PostgreSQL:
useradd -m -U -r -d / opt / flectra -s / bin / bash flectra
Une fois l'utilisateur créé, connectez-vous avec votre utilisateur Flectra et téléchargez la source Flectra à partir du référentiel officiel Git:
su - flectra
git clone --depth = 1 --branch = 1.0 https://gitlab.com/flectra-hq/flectra.git flectra
Après cela, créez un environnement virtuel Flectra avec la commande suivante:
python3 -m venv flectra-venv
Ensuite, activez l'environnement virtuel avec la commande suivante:
source flectra-venv/bin /activate
Par défaut, Ubuntu 20.04 est fourni avec la version 3.8.2 de Python. Vous devrez donc mettre à jour le fichier requirements.txt pour éviter l'erreur psucopg2 lors de l'installation de Flectra 1.7.
Vous pouvez éviter cette erreur en modifiant le fichier requirements.txt par défaut si vous trouverez le ficher avec la bonne configuration vous pourriez passer a l'etape suivante:
vim flectra / requirements.txt
Trouvez les lignes suivantes:
psycopg2 == 2.7.3.1; sys_platform! = 'win32'
psycopg2 == 2.8.3; sys_platform == 'win32'
Et mettez-les à jour avec les lignes suivantes:
psycopg2 == 2.8.5; sys_platform! = 'win32'
psycopg2 == 2.8.5; sys_platform == 'win32'
Enregistrez (avec :wq!)et fermez le fichier puis installez le module wheel avec la commande suivante:
pip3 install wheel
Ensuite, installez tous les modules Python requis avec la commande suivante:
pip3 install -r flectra /requirements.txt
Une fois tous les modules installés, désactivez depuis l'environnement virtuel avec la commande suivante:
Ensuite, quittez l'utilisateur Flectra à l'aide de la commande suivante:
exit
Configuration de Flectra:
Ensuite, vous devrez créer une structure de répertoires pour Flectra afin de stocker les addons, les fichiers de configuration et les logs.
Vous pouvez le créer avec la commande suivante:
mkdir /opt /flectra/flectra-custom-addons
mkdir /var/log/flectra
touchez /var/log/flectra/flectra.log
mkdir /etc/flectra
Ensuite, changez la propriété des répertoires ci-dessus en Flectra comme indiqué ci-dessous:
chown -R flectra: flectra /var/log/flectra /
chown -R flectra: flectra /etc/flectra
Par la suite, créez un fichier de configuration Flectra avec la commande suivante:
vim /etc/flectra/flectra.conf
Ajoutez les lignes suivantes:
[options]
admin_passwd = votre-mot de passe qui va etre utilise pour gere et install la base de donne
db_host = False
db_port = False
db_user = flectra
db_password = Faux
logfile = /var/log/flectra/flectra.log
logrotate = True
proxy_mode = True
addons_path = / opt/ flectra/flectra/addons, / opt/flectra/flectra-custom-addons
Assurez-vous de définir votre mot de passe sur un mot de passe correct et fort. Enregistrez et fermez le fichier lorsque vous avez terminé.
Créer un fichier de service Systemd pour Flectra:
Flectra est plus ou moins mis en place, mais nous n'avons actuellement aucun moyen de le gérer en tant que service. Pour résoudre ce problème, nous allons créer un fichier de service systemd pour gérer le service Flectra. Créez un nouveau fichier de service à l'aide de cette commande:
vim /etc/systemd/system/flectra.service
Ajoutez ensuite les lignes suivantes:
[Service]
Type=simple
SyslogIdentifier=flectra
PermissionsStartOnly=true
User=flectra
Group=flectra
ExecStart=/opt/flectra/flectra-venv/bin/python3 /opt/flectra/flectra/flectra-bin -c /etc/flectra/flectra.conf
StandardOutput=journal+console
[Install]
WantedBy=multi-user.target
Enregistrez et fermez le fichier. Ensuite, rechargez la liste des démons systemd avec la commande suivante:
systemctl daemon-reload
Ensuite, démarrez le service Flectra et activez-le pour démarrer au démarrage à l'aide de la commande suivante:
systemctl start flectra
systemctl enable flectra
Configurer Nginx en tant que proxy inverse pour Flectra:
Flectra est maintenant en cours d'exécution, mais il n'est accessible qu'à notre adresse IP en utilisant le port 7073. Cela peut convenir pour certains, mais ce serait idéal si Flectra pouvait être directement accessible en utilisant un nom de domaine avec le port par défaut (80). Pour ce faire, nous allons configurer Nginx en tant que proxy inverse. Installez le serveur Web Nginx à l'aide de la commande suivante:
Une fois installé, créez un nouveau fichier de configuration d'hôte virtuel Nginx, vous pouvez mettre le nom que vous voullez:
vim /etc/nginx/sites-available/networkvm.com.conf
Ajoutez les lignes suivantes. Assurez-vous de remplacer networkvm.com.conf par votre propre nom de domaine enregistré:
Ajoutez les lignes suivantes. Assurez-vous de remplacer networkvm.com.conf par votre propre nom de domaine enregistré:
#flectra server
upstream flectra {
server 127.0.0.1:7073;
}
server {
listen 80;
server_name networkvm.com;
proxy_read_timeout 720s;
proxy_connect_timeout 720s;
proxy_send_timeout 720s;
# Add Headers for flectra proxy mode
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
access_log /var/log/nginx/flectra.access.log;
error_log /var/log/nginx/flectra.error.log;
# Redirect requests to flectra backend server
location / {
proxy_redirect off;
proxy_pass http://flectra;
}
# common gzip
gzip_types text/css text/less text/plain text/xml application/xml application/json application/javascript;
gzip on;
}
ln -s /etc/nginx/sites-available/networkvm.conf.conf /etc/nginx/sites-enabled/
Enfin, redémarrez le service Nginx pour appliquer les modifications:
Enfin, redémarrez le service Nginx pour appliquer les modifications:
service nginx restart
Maintenant, ouvrez votre navigateur Web et saisissez l'URL http://networkvm.com comme nom de domaine dans notre cas ici or http://@-ip-de-votre-serveur/ Vous serez redirigé vers la page suivante:
Maintenant, ouvrez votre navigateur Web et saisissez l'URL http://networkvm.com comme nom de domaine dans notre cas ici or http://@-ip-de-votre-serveur/ Vous serez redirigé vers la page suivante:
Vous serez redirigé vers le tableau de bord Flectra, comme indiqué ci-dessous:
C'est parfait! Vous avez maintenant installe Flectra sur votre Ubuntu 20.04 . Vous pouvez désormais commencer à l’utiliser et améliorer la productivité de votre entreprise.