Monica – Responsable des relations personnelles
Gérer ses relations personnelles avec Monica CRM
Notre monde actuel se caractérise par une évolution constante. Nous sommes submergés d'informations, que ce soit par les actualités ou les réseaux sociaux. Malgré la peur de manquer quelque chose (FOMO), il est facile de se sentir dépassé et d'oublier des dates ou des événements importants.
Avec nos vies sociales qui reprennent, les rencontres, les rassemblements et les nouvelles expériences se multiplient. Il devient alors aisé d'oublier des détails sur les nouvelles personnes que nous rencontrons ou même sur celles que nous connaissons depuis toujours.
Monica, un CRM personnel open source, facilite grandement le suivi de ces informations. Il vous aide à structurer vos interactions avec vos proches et à ne plus rien oublier.
Explorons ensemble comment mettre en place une instance de Monica CRM via Docker sur Linode.
Prérequis pour installer Monica avec Docker
Avant tout, il est nécessaire de disposer d'un serveur Docker configuré. Linode simplifie ce processus, permettant de configurer un serveur pour quelques euros par mois, en y ajoutant une adresse IP privée (gratuite) et des sauvegardes pour un petit supplément.
Vous aurez également besoin d'un nom de domaine, disponible à l'achat auprès de nombreux fournisseurs en ligne, à des prix variés. Assurez-vous que les paramètres DNS de votre domaine pointent vers votre serveur Linode. Vous trouverez plus d'informations ici.
Il est aussi essentiel de configurer un proxy inverse sur votre serveur Docker pour gérer le trafic et les certificats SSL. J'ai réalisé une vidéo expliquant comment configurer un serveur Docker avec Portainer et un proxy inverse (Nginx Proxy Manager), disponible dans le premier article de blog de cette série.
Une fois votre serveur Docker opérationnel, vous pouvez initier l'installation de votre instance Monica. Deux méthodes s'offrent à vous :
- Via la ligne de commande SSH.
- Via l'interface de Portainer.
Nous allons utiliser Portainer pour profiter d'une interface graphique.
Rendez-vous sur http://adresse-ip-de-votre-serveur:9000 et connectez-vous à Portainer avec les identifiants configurés précédemment.
Dans le menu de gauche, cliquez sur "Stacks" puis sur "+ Add stack".
Une page s'affiche pour entrer le nom de la pile. Copiez et collez le code suivant :
version: "3.4"
services:
monica:
image: monica
networks:
- nginxproxymanager_default
depends_on:
- monicadb
ports:
- 8456:80
environment:
- APP_KEY=idYyiD2Dj3yMqoyi3EpcnHWC2GxzSAS5
- DB_HOST=monicadb
- DB_USERNAME=monica
- DB_PASSWORD=b2fWAfbyQuopHH9nD738x6o9TC9S8LM6
- APP_ENV=production
volumes:
- /home/docker/monica/config:/var/www/html/storage
restart: always
monicadb:
image: mysql:5.7
networks:
- nginxproxymanager_default
environment:
- MYSQL_RANDOM_ROOT_PASSWORD=true
- MYSQL_DATABASE=monica
- MYSQL_USER=monica
- MYSQL_PASSWORD=b2fWAfbyQuopHH9nD738x6o9TC9S8LM6
volumes:
- /home/docker/monica/db:/var/lib/mysql
restart: always
networks:
nginxproxymanager_default:
external: true
Ce fichier de composition Docker indique au système de télécharger l'image officielle de Monica, de nommer le conteneur "monica", de l'associer au réseau "nginxproxymanager_default", de le monter dans le répertoire "/home/docker/monica" et de le rendre accessible via le port 8456 du serveur Docker.
Vous pouvez modifier le chemin de stockage des données Monica. Assurez-vous que le dossier dispose des permissions nécessaires en écriture.
Il est primordial de modifier les mots de passe de la base de données pour renforcer la sécurité.
De même, la valeur "APP_KEY" doit être remplacée par une chaîne de caractères longue et aléatoire.
Une fois les paramètres validés, cliquez sur "Deploy the stack" pour lancer le déploiement.
Le téléchargement et le déploiement démarrent. Une fois la page rechargée et que tous les conteneurs apparaissent comme actifs, le processus est achevé.
Maintenant, vous pouvez accéder à http://adresse-ip-de-votre-serveur:8456 et visualiser l'écran de connexion de Monica.
L'instance est fonctionnelle, mais nous souhaitons y accéder via un sous-domaine. Effectuons cette configuration.
Configurer un domaine et SSL
Retournez dans le tableau de bord de Linode, section "Domaines". Sélectionnez votre domaine. Dans la gestion de domaine, localisez la section CNAME.
Ajoutez un CNAME pour votre sous-domaine. Par exemple, si vous entrez "monica" comme nom d'hôte, puis "@" dans la case "Alias to", vous créerez le sous-domaine "monica.votredomaine.com". Cliquez sur "Enregistrer".
Maintenant, accédez à Nginx Proxy Manager pour configurer le SSL et le domaine.
Connectez-vous à Nginx Proxy Manager via http://adresse-ip-de-votre-serveur:81. Les identifiants par défaut sont :
Email: [email protected] Password: changeme
Cliquez sur l'onglet "Certificats SSL" puis sur "Ajouter un certificat SSL".
Choisissez l'option "Let's Encrypt".
Dans la fenêtre, entrez l'URL complète de votre domaine, par exemple https://monica.votredomaine.com. Appuyez sur "Entrée".
Cliquez sur "Tester l'accessibilité du serveur". En cas d'erreur, corrigez le problème. Sinon, vérifiez l'adresse e-mail, acceptez les conditions d'utilisation de Let's Encrypt et cliquez sur "Enregistrer".
La génération et l'installation du certificat peuvent prendre quelques instants. Une fois terminé, la page se recharge et affiche les SSL disponibles.
Dans l'onglet "Hôtes", sélectionnez "Hôtes proxy".
Cliquez sur le bouton "Ajouter un hôte proxy".
Remplissez les informations nécessaires :
- Le domaine ou sous-domaine que vous venez de sécuriser.
- Laissez le schéma sur HTTP.
- Entrez l'adresse IP de votre conteneur (visible dans Portainer)
- Pour le "Port de transfert", saisissez 80, qui correspond au port côté conteneur.
Cochez les cases "Cache Assets", "Block Common Exploits" et "Websocket Support".
Dans l'onglet "SSL", sélectionnez le certificat SSL créé précédemment.
Cochez les 4 options en dessous, acceptez les conditions de Let's Encrypt et cliquez sur "Enregistrer".
Après un moment, la page se rechargera avec la nouvelle entrée dans la section "Hôtes proxy".
Première Connexion
Accédez à votre nouvelle URL. Vous devriez être redirigé vers une page de connexion.

Remplissez le formulaire d'inscription, acceptez les CGU et cliquez sur "S'inscrire".
Une fois connecté, commencez à créer ou importer vos contacts. Avant cela, allez dans les paramètres (l'icône d'engrenage) pour personnaliser les champs selon vos besoins, notamment dans l'onglet "Personnalisation".
Vous pourrez toujours modifier ces paramètres ultérieurement, donc ne vous inquiétez pas de les faire parfaits du premier coup.
Ajouter des Contacts
Votre instance Monica est maintenant opérationnelle. Vous pouvez désormais gérer vos interactions, vos relations et ne plus rien oublier. Imaginez l'impression que vous ferez en vous souvenant des anniversaires ou autres événements importants !
Si vous préférez, vous pouvez aussi tester une solution CRM basée sur le cloud, si vous n'êtes pas prêt à installer et gérer vous-même une instance, ou si vous avez besoin de plus de fonctionnalités.