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

Comment installer Monica Personal Relationship Manager sur CentOS 8

Monica est une application Web open source de gestion des relations personnelles (PRM) conçue pour organiser les interactions avec vos proches. Considérez-le comme un CRM (un outil populaire utilisé par les équipes de vente dans le monde de l'entreprise) pour vos amis ou votre famille. Monica permet aux gens de garder une trace de tout ce qui est important concernant leurs amis et leur famille. Comme les activités qui sont faites avec eux. La dernière fois que vous avez appelé quelqu'un. Ce dont vous avez parlé. Cela vous aidera à vous souvenir du nom et de l'âge des enfants. Il peut également vous rappeler d'appeler quelqu'un à qui vous n'avez pas parlé depuis un certain temps. Ce tutoriel passera en revue l'installation de Monica sur CentOS 8.

Fonctionnalités

  • Ajouter et gérer des contacts
  • Définir les relations entre les contacts
  • Rappels
  • Rappels automatiques pour les anniversaires
  • Restez en contact avec un contact en envoyant des rappels à un intervalle donné
  • Gestion des dettes
  • Possibilité d'ajouter des notes à un contact
  • Possibilité d'indiquer comment vous avez rencontré quelqu'un
  • Gestion des activités réalisées avec un contact
  • Gestion des tâches
  • Gestion des cadeaux
  • Gestion des adresses et de tous les différents moyens de contacter quelqu'un
  • Gestion des types de champs de contact
  • Gestion des animaux de contact
  • Journal de base
  • Possibilité d'indiquer comment la journée s'est déroulée
  • Télécharger des documents et des photos
  • Exportation et importation de données
  • Exporter le contact au format vCard
  • Possibilité de définir des critères de sexe personnalisés
  • Possibilité de définir des types d'activités personnalisés
  • Possibilité d'ajouter des contacts favoris
  • Suivez les conversations effectuées sur les réseaux sociaux ou par SMS
  • Multi-utilisateurs
  • Libellés pour organiser les contacts
  • Possibilité de définir quelle section doit apparaître sur la planche de contact
  • Multidevises
  • Multilingues
  • Une API qui couvre la plupart des données

Exigences

  • CentOS 8
  • Git
  • NPM (gestionnaire de paquets de nœuds)
  • PHP version 7.1 ou ultérieure
  • MySQL
  • Serveur HTTP avec support PHP (ex :Apache, Nginx, Caddy...)
  • Compositeur
  • Facultatif :Redis ou Beanstalk

Prérequis

  • Un système d'exploitation CentOS 8
  • Un utilisateur non root avec sudo privilèges.

Étapes initiales

Vérifiez votre version de CentOS :

cat /etc/centos-release
# CentOS Linux version 8.0.1905 (Core)

Configurez le fuseau horaire :

timedatectl list-timezones
sudo timedatectl set-timezone 'Région/Ville'

Mettez à jour les packages de votre système d'exploitation (logiciels). Il s'agit d'une première étape importante car elle garantit que vous disposez des dernières mises à jour et correctifs de sécurité pour les packages logiciels par défaut de votre système d'exploitation :

sudo yum mise à jour -y

Installez certains packages essentiels nécessaires à l'administration de base du système d'exploitation CentOS :

sudo yum install -y curl wget vim git unzip socat bash-completion epel-release gcc-c++ make libpng-devel

Étape 1 - Installer PHP

Installez PHP, ainsi que les extensions PHP requises :

sudo yum install -y php php-cli php-fpm php-common php-mbstring php-xml php-mysqlnd php-curl php-zip php-intl php-bcmath php-gd php-json php-gmp 

Pour afficher PHP compilé en modules, vous pouvez exécuter :

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Vérifiez la version de PHP :

php --version

# PHP 7.2.11-1-(cli) (construit :26 octobre 2019 14:14:18) (NTS)
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.11, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.3.11-1~deb10u1, Copyright (c) 1999-2018, par Zend Technologies

Démarrez et activez le service PHP-FPM :

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Étape 2 - Installez le client acme.sh et obtenez le certificat Let's Encrypt (facultatif)

Sécuriser votre site avec HTTPS n'est pas nécessaire, mais c'est une bonne pratique pour sécuriser le trafic de votre site. Pour obtenir un certificat TLS de Let's Encrypt, nous utiliserons le client acme.sh. Acme.sh est un logiciel shell UNIX simple permettant d'obtenir des certificats TLS de Let's Encrypt sans aucune dépendance.

Téléchargez et installez acme.sh :

sudo su - root
clone git https://github.com/Neilpang/acme.sh.git
cd acme.sh
./acme.sh --install -- accountemail [email protected]
source ~/.bashrc
cd ~

Vérifier la version d'acme.sh :

acme.sh --version
# v2.8.2

Obtenir RSA et ECC/ECDSA certificats pour votre domaine/nom d'hôte :

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example .com --keylength ec-256

Si vous voulez de faux certificats pour les tests, vous pouvez ajouter --staging drapeau aux commandes ci-dessus.

Après avoir exécuté les commandes ci-dessus, vos certificats et clés sera dans :

  • Pour RSA :/home/username/example.com répertoire.
  • Pour ECC/ECDSA :/home/username/example.com_ecc répertoire.

Pour répertorier vos certificats émis, vous pouvez exécuter :

acme.sh --list

Créez un répertoire pour stocker vos certificats. Nous utiliserons le /etc/letsencrypt répertoire.

mkdir -p /etc/letsecnrypt/example.com 
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Installez/copiez les certificats dans le répertoire /etc/letsencrypt.

# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example .com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh - -install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain- fichier /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl recharger nginx.service"

Tous les certificats seront automatiquement renouvelés tous les 60 jours.

Après avoir obtenu les certificats, quittez l'utilisateur root et revenez à l'utilisateur sudo normal :

quitter

Étape 3 :Installez MariaDB et créez une base de données pour Monica

Installez le serveur de base de données MariaDB :

sudo yum install -y mariadb-server

Vérifiez la version de MariaDB :

mysql --version
# mysql Ver 15.1 Distrib 10.3.17-MariaDB, pour debian-linux-gnu (x86_64) en utilisant readline 5.2

Démarrez et activez le service MariaDB :

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Exécutez l'mysql_secure installation script pour améliorer la sécurité de MariaDB et définir le mot de passe pour MariaDB root utilisateur :

sudo mysql_secure_installation

Répondez à chacune des questions :

Souhaitez-vous configurer le plug-in VALIDATE PASSWORD ? N 
Nouveau mot de passe :votre_mot_de_passe_sécurisé
Saisissez à nouveau le nouveau mot de passe : votre_mot_de_passe_sécurisé
Supprimer les utilisateurs anonymes ? [O/n] O
Interdire la connexion root à distance ? [O/n] O
Supprimer la base de données de test et y accéder ? [O/n] O
Recharger les tables de privilèges maintenant ? [O/n] O

Connectez-vous au shell MariaDB en tant qu'utilisateur racine :

sudo mysql -u root -p
# Entrez le mot de passe

Créez une base de données et un utilisateur MariaDB vides pour Monica et mémorisez les informations d'identification :

mariadb> CREATE DATABASE dbname ;
mariadb> GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password' ;
mariadb> FLUSH PRIVILEGES ;

Quitter MariaDB :

mariadb> quitter

Remplacez dbname,  username et password avec vos noms.

Étape 4 - Installer et configurer NGINX

Monica fonctionnera bien avec la plupart des principaux logiciels de serveur Web prenant en charge PHP, mais dans ce guide, nous utiliserons NGINX. N'hésitez pas à utiliser Apache si vous le préférez à NGINX.

Installez NGINX :

sudo yum install -y nginx

Vérifiez la version de NGINX :

sudo nginx -v
# version de nginx :nginx/1.14.2

Exécutez sudo vim /etc/nginx/conf.d/monica.conf commande et configurez NGINX pour Monica.

server {
  listen 80;
  listen 443 ssl;

  server_name example.com;
  root /var/www/monica/public/;
# RSA
ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
# ECC
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.key;
index index.php; charset utf-8; location ^~ /storage { deny all; } location / { try_files $uri $uri/ /index.php?$query_string; } location ~* \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; include fastcgi_params; fastcgi_pass 127.0.0.1:9000; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_buffer_size 16k; fastcgi_buffers 4 16k; } }

Tester la configuration NGINX :

sudo nginx -t

Recharger NGINX :

sudo systemctl recharger nginx.service

Étape 5 - Installer Node.js et npm

Installez Node.js :

curl --silent --location https://rpm.nodesource.com/setup_12.x | sudo bash -
sudo yum install -y nodejs

Vérifiez les versions de Node.js et npm :

node -v &&npm -v
# v12.13.1
# 6.12.1

Étape 6 - Installer Composer

Installer Composer :

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer- setup.php ') ==='a5c698ffe4b8e849a443b120cd5ba38043260d5c4023dbf93e1558871f1f07f58274fc6f4c93bcfd858c6bd0775cd8d1') {echo 'installateur vérifié';} else {echo 'installateur corrompu'; unlink (' compositeur-setup.php ');} echo PHP_EOL; "
php compositeur -setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

Vérifiez la version de Composer :

composer --version
# Composer version 1.9.1 2019-11-01 17:20:17

Étape 7 - Installer et configurer Monica

Créez un dossier racine de document vide où Monica doit être installée :

sudo mkdir -p /var/www/monica

Accédez au dossier racine du document :

cd /var/www/monica

Changer la propriété de /var/www/monica dossier à l'utilisateur johndoe:

N'oubliez pas de remplacer "johndoe" par votre nom d'utilisateur.

sudo chown -R johndoe:johndoe /var/www/monica

Cloner le dépôt Monica vers celui-ci :

git clone https://github.com/monicahq/monica.git .
git checkout tags/v2.15.2

REMARQUE :consultez une version balisée de Monica, car la branche principale peut ne pas toujours être stable. Recherchez la dernière version officielle sur la page des versions sur Github et mettez-la à jour avec le numéro de version ci-dessus vers la dernière version.

Pour créer votre version de toutes les variables d'environnement nécessaires au fonctionnement du projet :

cp .env.exemple .env

Mettre à jour .env à vos besoins spécifiques. N'oubliez pas de définir DB_USERNAME et DB_PASSWORD avec les réglages utilisés derrière. Vous devrez configurer un serveur de messagerie pour que l'inscription et les rappels fonctionnent correctement.

Exécutez composer install --no-interaction --no-suggest --no-dev pour installer tous les packages.

Exécutez php artisan key:generate pour générer une clé d'application. Cela définira APP_KEY avec la bonne valeur automatiquement.

Exécutez php artisan setup:production -v pour exécuter les migrations, amorcez la base de données et les dossiers de liens symboliques.

Définissez la propriété et les autorisations appropriées :

sudo chown -R nginx:nginx /var/www/monica
sudo chmod -R 775 /var/www/monica/storage

Exécutez sudo vim /etc/php-fpm.d/www.conf et définissez l'utilisateur et le groupe sur nginx . Initialement, il sera défini sur l'utilisateur et le groupe apache .

sudo vim /etc/php-fpm.d/www.conf

Redémarrez php-fpm.service:

sudo systemctl redémarrer php-fpm.service

Étape 8 : Terminer l'installation de Monica

Maintenant, ouvrez votre navigateur Web et tapez l'URL http://example.com. Vous serez redirigé vers la page suivante :

Indiquez votre adresse e-mail, votre nom et votre mot de passe. Ensuite, cliquez sur le bouton S'inscrire. Vous devriez voir le tableau de bord de Monica sur la page suivante :

  • https://www.monicahq.com/
  • https://github.com/monicahq/monica

Cent OS
  1. Comment installer PHP 5.5 sur CentOS

  2. Comment installer PHP 5.6 sur CentOS 7

  3. Comment installer PHP 7.3 sur CentOS 8

  4. Comment installer PHP 7.4 sur CentOS 7

  5. Comment installer PHP 7.3 sur CentOS 7

Comment installer PHP 7.4 sur CentOS 8 / RHEL 8

Comment installer TaskBoard sur CentOS 7

Comment installer Monica Personal Relationship Manager sur Ubuntu 18.04 LTS

Comment installer Monica Personal Relationship Manager sur Debian 10

Comment installer PHP 7 sur CentOS 7

Comment installer PHP 7.4 sur CentOS 8