Comment installer MODX Revolution sur un VPS CentOS 7 LAMP
Vous utilisez un système différent? MODX Revolution est un système de gestion de contenu (CMS) de niveau entreprise rapide, flexible, évolutif, gratuit et open source écrit i
ERP ou Enterprise Resource Planning est une suite d'applications d'entreprise utilisée pour gérer les principaux processus métier. ERPNext est une application ERP auto-hébergée gratuite et open source écrite en Python. Il utilise Node.js pour le frontal et MariaDB pour stocker ses données. ERPNext fournit une interface Web facile à utiliser qui permet aux entreprises de gérer les tâches quotidiennes. Il contient des modules pour la comptabilité, le CRM, la GRH, la fabrication, le POS, la gestion de projet, les achats, la gestion des ventes, la gestion des entrepôts, etc. ERPNext peut être utilisé pour gérer différentes industries telles que les prestataires de services, la fabrication, la vente au détail et les écoles.
Dans ce tutoriel, nous allons installer ERPNext sur CentOS 7.
Pour ce didacticiel, nous utiliserons erp.example.com
le nom de domaine pointé vers le serveur. Veuillez vous assurer de remplacer toutes les occurrences de erp.example.com
par votre nom de domaine réel.
Mettez à jour votre système de base à l'aide du guide " Comment mettre à jour CentOS 7 ". Une fois votre système mis à jour, installez Python.
ERPNext a besoin de Python version 2.7 pour fonctionner. Python 2.7 est installé par défaut dans toutes les instances de serveur CentOS. Vous pouvez vérifier si la version installée de Python en exécutant:
python -V
Vous devriez obtenir la sortie similaire.
[user@vultr ~]$ python -V
Python 2.7.5
Bien que la version installée de Python ne soit pas la dernière, elle fonctionne sans accroc. Changer la version par défaut de Python peut casser YUM.
Installez les packages dans le Development tools
groupe requis pour la compilation des fichiers d'installation.
sudo yum groupinstall -y "Development tools"
Installez quelques dépendances supplémentaires:
sudo yum install -y redhat-lsb-core git python-setuptools python-devel openssl-devel libffi-devel
Installez l' pip
outil Python . Pip est le gestionnaire de dépendances pour les packages Python.
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
La commande ci-dessus installera Pip sur votre système. Pour vous assurer que vous disposez de la dernière version de pip
et setuptools
, exécutez:
sudo pip install --upgrade pip setuptools
Installez Ansible à l'aide de Pip. Ansible automatise l'approvisionnement logiciel, la gestion de la configuration et le déploiement d'applications.
sudo pip install ansible
MariaDB est un fork du serveur de base de données MySQL. Installez MariaDB en exécutant.
sudo yum -y install mariadb mariadb-server mysql-devel
Le moteur de stockage Barracuda est requis pour la création de bases de données ERPNext, vous devrez donc configurer MariaDB pour utiliser le moteur de stockage Barracuda. Modifiez le fichier de configuration MariaDB par défaut my.cnf
.
sudo nano /etc/my.cnf
Ajoutez les lignes suivantes sous la symbolic-links=0
ligne.
innodb-file-format=barracuda
innodb-file-per-table=1
innodb-large-prefix=1
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysql]
default-character-set = utf8mb4
Démarrez MariaDB et activez-le pour démarrer automatiquement au démarrage.
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Avant de configurer la base de données, vous devrez sécuriser MariaDB. Vous pouvez le sécuriser en exécutant le mysql_secure_installation
script:
sudo mysql_secure_installation
Le mot de passe root de MariaDB vous sera demandé. Par défaut, aucun mot de passe root n'est défini sur MariaDB. Appuyez sur la touche "Entrée" pour continuer. Définissez un mot de passe fort pour l'utilisateur root de votre serveur MariaDB et répondez "Y" à toutes les autres questions posées. Les questions posées sont explicites.
Comme le référentiel EPEL est installé par défaut dans toutes les instances Vultr CentOS 7, vous pouvez installer directement Redis et Nginx. Mais pour installer la dernière version de Node.js, vous devrez ajouter le référentiel Nodesource dans votre système.
Ajoutez le référentiel Nodesource pour Node.js 8.x.
sudo curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
Installez Nginx, Nodejs et Redis:
sudo yum -y install nginx nodejs redis
Démarrez Nginx et activez-le pour démarrer au démarrage en exécutant:
sudo systemctl start nginx
sudo systemctl enable nginx
Démarrez Redis et activez-le pour démarrer au démarrage en exécutant:
sudo systemctl start redis
sudo systemctl enable redis
Le wkhtmltopdf
programme est un outil en ligne de commande qui convertit HTML en PDF à l'aide du moteur de rendu QT Webkit. Installez les dépendances requises:
sudo yum -y install libXrender libXext xorg-x11-fonts-75dpi xorg-x11-fonts-Type1
Téléchargez la dernière version de wkhtmltopdf
.
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
Extrayez l'archive en exécutant:
sudo tar -xf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz -C /opt
La commande ci-dessus extraira l'archive vers /opt/wkhtmltox
. Créez un lien logiciel afin que wkhtmltopdf
et wkhtmltoimage
puisse être exécuté globalement comme une commande.
sudo ln -s /opt/wkhtmltox/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltox/bin/wkhtmltoimage /usr/bin/wkhtmltoimage
Vous pouvez maintenant exécuter la wkhtmltopdf -V
commande pour vérifier si cela fonctionne, vous verrez:
[user@vultr ~]$ wkhtmltopdf -V
wkhtmltopdf 0.12.4 (with patched qt)
À ce stade, nous avons installé toutes les dépendances requises. Vous pouvez maintenant procéder à l'installation de Bench.
Bench
est un utilitaire de ligne de commande fourni par Frappe pour installer et gérer l'application ERPNext sur un système basé sur Unix à des fins de développement et de production. Bench peut également créer et gérer la configuration de Nginx et du superviseur.
Créez un nouvel utilisateur pour exécuter les processus Bench dans l'environnement isolé.
sudo adduser bench -d /opt/bench
Modifiez le mot de passe de l'utilisateur.
sudo passwd bench
Fournissez des sudo
autorisations à l' bench
utilisateur.
sudo usermod -aG wheel bench
Connectez-vous en tant bench
qu'utilisateur nouvellement créé :
sudo su - bench
Clonez le référentiel Bench dans /opt/bench
:
cd /opt/bench
git clone https://github.com/frappe/bench bench-repo
Installez le banc à l'aide de pip
.
sudo pip install -e bench-repo
Une fois Bench installé, poursuivez l'installation d'ERPNext à l'aide de Bench.
Initialisez un répertoire bench avec le framework frappe installé. Pour garder tout bien rangé, nous travaillerons sous /opt/bench
répertoire. Bench configurera également des sauvegardes régulières et des mises à jour automatiques une fois par jour.
cd /opt/bench
bench init erpnext && cd erpnext
Créez un nouveau site Frappe:
bench new-site erp.example.com
La commande ci-dessus vous demandera le mot de passe root MySQL. Fournissez le mot de passe que vous avez défini précédemment pour l'utilisateur root MySQL. Il vous demandera également de définir un nouveau mot de passe pour le compte administrateur. Vous aurez besoin de ce mot de passe ultérieurement pour vous connecter au tableau de bord administrateur.
Téléchargez les fichiers d'installation d'ERPNext à partir du référentiel git distant à l'aide de Bench.
bench get-app erpnext https://github.com/frappe/erpnext
Installez ERPNext sur votre site nouvellement créé:
bench --site erp.example.com install-app erpnext
ERPNext est installé sur votre serveur. Vous pouvez démarrer l'application immédiatement pour vérifier si l'application a bien démarré:
bench start
Cependant, vous devez arrêter l'exécution et poursuivre la configuration de l'application pour une utilisation en production.
Par défaut, l'application ERPNext écoute sur le port 8000, pas sur le port HTTP standard 80. En outre, l'exécution du serveur Web intégré pour une utilisation en production n'est pas recommandée car nous allons exposer le serveur au monde. Par conséquent, vous devez utiliser un serveur Web de production comme proxy inverse tel qu'Apache ou Nginx. Dans ce tutoriel, nous utiliserons Nginx comme proxy inverse car il peut être configuré automatiquement à l'aide de Bench. Bench peut générer et installer automatiquement la configuration selon la configuration ERPNext.
Bien que nous puissions démarrer l'application à l'aide de la commande ci-dessus, l'exécution d'ERPNext s'arrêtera dès que vous fermerez le terminal. Pour surmonter ce problème, je recommande d'utiliser Supervisor qui est très utile pour exécuter l'application en continu dans un environnement de production. Supervisor est un système de contrôle de processus qui vous permet de surveiller et de contrôler un certain nombre de processus sur les systèmes d'exploitation Linux. Une fois le superviseur configuré, il démarrera automatiquement l'application au démarrage ainsi qu'en cas d'échecs. Bench peut configurer automatiquement Supervisor pour l'application ERPNext.
Installer le superviseur:
sudo yum -y install supervisor
Démarrez Supervisor et activez-le pour démarrer automatiquement au démarrage:
sudo systemctl start supervisord
sudo systemctl enable supervisord
Configuration du banc pour une utilisation en production:
sudo bench setup production bench
La commande ci-dessus peut vous demander de remplacer le fichier de configuration par défaut de Supervisor existant par un nouveau. Choisissez y
de continuer. Bench ajoute un certain nombre de processus au fichier de configuration du superviseur. La commande ci-dessus vous demandera également si vous souhaitez remplacer la configuration actuelle de Nginx par une nouvelle. Entrez y
pour continuer. Une fois que Bench a terminé l'installation de la configuration, fournissez d'autres utilisateurs pour exécuter les fichiers dans votre répertoire personnel de l'utilisateur Bench.
chmod o+x /opt/bench/
Si vous exécutez un pare-feu sur votre serveur, vous devrez configurer le pare-feu pour définir une exception pour le service HTTP. Autorisez le proxy inverse Nginx à se connecter depuis l'extérieur du réseau.
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Vous pouvez maintenant accéder au site sur http://erp.example.com
.
Vous pouvez vérifier l'état des processus en exécutant:
sudo supervisorctl status all
Vous devriez voir la sortie suivante:
[bench@vultr ~]$ sudo supervisorctl status all
erpnext-redis:erpnext-redis-cache RUNNING pid 2554, uptime 1:06:58
erpnext-redis:erpnext-redis-queue RUNNING pid 2553, uptime 1:06:58
erpnext-redis:erpnext-redis-socketio RUNNING pid 2555, uptime 1:06:58
erpnext-web:erpnext-frappe-web RUNNING pid 2559, uptime 1:06:58
erpnext-web:erpnext-node-socketio RUNNING pid 2556, uptime 1:06:58
erpnext-workers:erpnext-frappe-default-worker-0 RUNNING pid 2549, uptime 1:06:58
erpnext-workers:erpnext-frappe-long-worker-0 RUNNING pid 2551, uptime 1:06:58
erpnext-workers:erpnext-frappe-schedule RUNNING pid 2550, uptime 1:06:58
erpnext-workers:erpnext-frappe-short-worker-0 RUNNING pid 2552, uptime 1:06:58
Pour arrêter tous les processus ERPNext, utilisez:
sudo supervisorctl stop all
Pour démarrer tous les processus ERPNext, utilisez:
sudo supervisorctl start all
Let's Encrypt fournit des certificats SSL gratuits aux utilisateurs. SSL peut être installé manuellement ou automatiquement via Bench. Bench peut installer automatiquement le client Let's Encrypt et obtenir les certificats. De plus, il met automatiquement à jour la configuration Nginx pour utiliser les certificats.
Le nom de domaine que vous utilisez pour obtenir les certificats de l'AC Let's Encrypt doit être dirigé vers le serveur. Le client vérifie l'autorité de domaine avant d'émettre les certificats.
Activez la mutualisation DNS pour l'application ERPNext.
bench config dns_multitenant on
Exécutez Bench pour configurer Let's Encrypt sur votre site:
sudo bench setup lets-encrypt erp.example.com
Pendant l'exécution du script, le client Let's Encrypt vous demandera d'arrêter temporairement le serveur Web Nginx. Il installera automatiquement les packages requis et le client Let's Encrypt. Le client vous demandera votre adresse e-mail. Vous devrez également accepter les termes et conditions. Une fois les certificats générés, Bench générera également la nouvelle configuration pour Nginx qui utilise les certificats SSL. Il vous sera demandé avant de remplacer la configuration existante. Bench crée également une crontab
entrée pour renouveler automatiquement les certificats chaque mois.
Enfin, activez le planificateur pour exécuter automatiquement les travaux planifiés:
bench enable-scheduler
Tu devrais voir:
[bench@vultr erpnext]$ bench enable-scheduler
Enabled for erp.example.com
Une fois le processus terminé, vous pouvez accéder à votre application à l'adresse https://erp.example.com
. Connectez-vous avec le nom d'utilisateur Administrator
et le mot de passe que vous avez définis lors de l'installation. Vous serez redirigé vers le bureau où vous devrez fournir des informations pour configurer ERPNext ERP en fonction de votre entreprise. Vous pouvez désormais utiliser l'application pour gérer votre entreprise.
Félicitations, vous avez une application ERPNext pleinement opérationnelle installée sur votre serveur CentOS 7.
Vous utilisez un système différent? MODX Revolution est un système de gestion de contenu (CMS) de niveau entreprise rapide, flexible, évolutif, gratuit et open source écrit i
Vultr vous offre une connectivité réseau privée impressionnante pour les serveurs fonctionnant au même endroit. Mais parfois, vous voulez deux serveurs dans des pays différents
Vous utilisez un système différent? Introduction CyberPanel est lun des premiers panneaux de contrôle du marché à la fois open source et utilisant OpenLiteSpeed. Quest-ce que
Vous utilisez un système différent? ESpeak peut générer des fichiers audio de synthèse vocale (TTS). Ceux-ci peuvent être utiles pour de nombreuses raisons, telles que la création de votre propre Turin
Vous utilisez un système différent? Thelia est un outil open source pour la création de sites Web de commerce électronique et la gestion de contenu en ligne, écrit en PHP. Code source Thelia i
BBR (Bottleneck Bandwidth and RTT) est un nouvel algorithme de contrôle de congestion qui est contribué à la pile TCP du noyau Linux par Google. Avec BBR en place,
YOURLS (Your Own URL Shortener) est une application open source de raccourcissement dURL et danalyse de données. Dans cet article, nous couvrirons le processus dinstallation
Vous utilisez un système différent? RTMP est idéal pour diffuser du contenu en direct. Lorsque RTMP est associé à FFmpeg, les flux peuvent être convertis en différentes qualités. Vultr i
LimeSurvey est un outil de sondage en ligne gratuit et open source qui est largement utilisé pour publier des sondages en ligne et recueillir des commentaires sur les sondages. Dans cet article, je vais
Introduction Java est une plate-forme logicielle populaire qui vous permet de développer et dexécuter des applications et des applets Java dans divers environnements matériels. Il y a
Vous utilisez un système différent? Le forum Vanilla est une application de forum open source écrite en PHP. Il est entièrement personnalisable, facile à utiliser et prend en charge externa
Vous utilisez un système différent? Netdata est une étoile montante dans le domaine de la surveillance des métriques système en temps réel. Par rapport à dautres outils du même type, Netdata:
Dans ce didacticiel, découvrez comment configurer un serveur multijoueur Just Cause 2. Prérequis Veuillez vous assurer que le système est entièrement mis à jour avant de commencer
Vous utilisez un système différent? Dans ce tutoriel, je vais vous expliquer comment configurer un serveur Starbound sur CentOS 7. Prérequis Vous devez posséder ce jeu sur vous
ZNC est un videur IRC gratuit et open-source qui reste connecté en permanence à un réseau afin que les clients puissent recevoir des messages envoyés lorsquils sont hors ligne. Thi
Django est un framework Python populaire pour lécriture dapplications Web. Avec Django, vous pouvez créer des applications plus rapidement, sans réinventer la roue. Si tu veux
ionCube Loader est une extension PHP qui permet à un serveur Web dexécuter des fichiers PHP qui ont été encodés à laide dionCube Encoder et qui est requis pour exécuter e
Vous utilisez un système différent? Reader Self 3.5 est un lecteur RSS auto-hébergé simple et flexible, gratuit et open source et une alternative à Google Reader. Reader Sel
Introduction Dans ce tutoriel, installez bien PufferPanel sur notre Vultr VPS. PufferPanel est un panneau de contrôle open source et gratuit pour vous gérer
Vous utilisez un système différent? Introduction BoltWire est un système de gestion de contenu gratuit et léger écrit en PHP. Comparé à la plupart des autres gestionnaires de contenu
Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau
ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.
Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+
Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.
Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus
13 outils commerciaux d'extraction de données de Big Data
Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true
Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.
Un aperçu de 26 techniques d'analyse des mégadonnées : partie 1
L'IA dans le domaine de la santé a fait de grands progrès au cours des dernières décennies. Ainsi, l'avenir de l'IA dans les soins de santé continue de croître de jour en jour.