[obsolète] Installation de Crème CRM 1.6 sous Linux - Version imprimable +- Crème CRM (https://www.cremecrm.com/forum) +-- Forum : CRM (https://www.cremecrm.com/forum/forumdisplay.php?fid=3) +--- Forum : Tutoriels (https://www.cremecrm.com/forum/forumdisplay.php?fid=14) +--- Sujet : [obsolète] Installation de Crème CRM 1.6 sous Linux (/showthread.php?tid=103) Pages :
1
2
|
[obsolète] Installation de Crème CRM 1.6 sous Linux - genglert - 27-02-2017 (ceci est une petite mise-à-jour du tutoriel pour pour Creme1.5 de jmarmand https://www.cremecrm.com/forum/showthread.php?tid=70) Pour ce tutoriel d'installation de Crème CRM sous Linux on va faire les choses du mieux possible. On va donc installer des choses qui pourraient vous sembler inutiles mais qui à terme permettront d'avoir une installation pérenne et qui ne rentrera pas en collision avec d'autres logiciels que vous pourriez vouloir installer. Enfin, le tutoriel va être en deux parties, la première partie vous permet d'installer tout le nécessaire pour faire fonctionner Crème avec le serveur de développement intégré dans Django. Le serveur de développement n'est pas une façon pérenne de faire fonctionner une application Django. Mais c'est un moyen simple de vérifier que tout fonctionne et vous pouvez faire quelques tests avec pour vérifier que Crème vous convient. La deuxième partie du tutoriel vous permettra d'utiliser Apache pour faire tourner votre Crème. Bien que plus compliqué à faire fonctionner, c'est une façon pérenne de faire les choses. Une remarque très importante : si l'utilisation du serveur de développement est déconseillé pour une utilisation sur du long terme dans le cadre d'une machine personnelle, elle est par contre totalement interdite dans le cadre d'un hébergement sur un serveur. Si vous comptez installer Crème tout de suite sur un serveur, il ne faut pas, pas une seule seconde, utiliser le serveur de développement. En effet celui-ci est fait pour le test et rien d'autre. Il n'est pas prévu, ni en terme de performance ni en terme de sécurité, pour être utilisé dans un vrai contexte de production. On va donc commencer par installer Virtualenv. Virtualenv vous permet en effet d'avoir plusieurs environnements virtuels Python. L’intérêt est de pouvoir cloisonner les dépendances par projet. Vous êtes ainsi sûr que votre Crème n’arrêtera pas de fonctionner juste parce que vous avez dû mettre à jour une librairie Python pour pouvoir installer un autre logiciel. On ne va pas se contenter d'installer Virtualenv et on va installer aussi Virtualenvwrapper qui est une surcouche à Virtualenv et qui vous simplifiera les choses. Pour installer tout cela, vous allez devoir commencer par installer python-setuptools et python-pip. Si vous êtes sous Debian ou Ubuntu il vous suffit de faire : Code : sudo apt-get install python-setuptools Ensuite, vous allez installer Virtualenvwrapper qui installera automatiquement Virtualenv en même temps. Pour cela il vous suffit de taper : Code : sudo pip install virtualenvwrapper Avant d'aller plus loin, il faut que vous vérifiez que les packages suivants sont bien installés, sinon, installez les :
Une fois que tout est installé on va pouvoir créer le Virtualenv pour Crème. Il reste pourtant une dernière petite config à faire, à savoir indiquer où vous allez stocker vos différents Virtualenv. Je vais partir du principe que vous utilisez le répertoire Envs à la racine de votre home. Il va falloir que dans le fichier de configuration de votre shell (.bashrc si vous utilisez le bash) vous configuriez la variable WORKON_HOME. Cela se fait de la manière suivante (pour bash) Code : export WORKON_HOME=~/Envs Une fois cela fait et après avoir rechargé votre configuration, vous pouvez créer votre Virtualenv en tapant la commande : Code : mkvirtualenv creme Une fois que votre Virtualenv est créé, il faut l'activer pour votre console. Vous allez en effet installer de nouveaux packages Python et faire des commandes Django et tout doit se faire dans votre Virtualenv. L'activation d'un Virtualenv se fait avec la commande workon. Si vous la lancez sans argument elle vous donnera la liste des Virtualenv possibles. Avec un nom de Virtualenv, elle l'active. Ici, vous devez donc taper Code : workon creme Il y a d'autre commandes intéressantes dans Virtualenvwrapper. Vous les trouverez dans le man. Une commande qui vous sera utile est la commande deactivate qui permet de sortir d'un Virtualenv pour revenir à votre environnement système classique. Maintenant que vous avez activé votre Virtualenv, il vous faut récupérer Crème. Je vais partir du principe que vous voulez installer la version 1.6 (une version 1.7 sortira durant l'année 2017). Pour cela il suffit d'utiliser mercurial (que vous devez avoir installé avec votre gestionnaire de package préféré). Taper simplement à l'endroit où vous voulez déposer le code source de Crème : Code : hg clone https://bitbucket.org/hybird/creme_crm-1.6 Vous remarquerez que les sources de Crème contiennent (dans le répertoire creme) un petit fichier requirements.txt. C'est ce fichier qui va servir à installer de manière automatique les dépendances. Il vous suffit donc de taper (suivant l'endroit d'où vous vous trouvez) Code : pip install -r creme/requirements.txt Code : pip install -r requirements.txt Une fois l'installation des dépendances finies et avant de passer au déploiement de Crème proprement dit, on va devoir configurer la base de données. Je vais partir du principe que vous utilisez MySQL comme serveur de base de données. Pour pouvoir utiliser Crème, il faut créer une base de données et un utilisateur qui a les droits sur celle-ci. Vous pouvez bien entendu le faire en graphique grâce à un outil d'administration de BD. Vous pouvez aussi le faire en console. Logguez vous dans MySQL avec la commande suivante : Code : mysql -uroot -p Puis passez sur la base de configuration avec la commande : Code : use mysql; Ajoutez maintenant votre utilisateur (en remplaçant les valeurs d'exemple par vos propres valeurs) avec la commande : Code : INSERT INTO user(host,user,password) VALUES ('localhost','cremeuser',PASSWORD('34jkfue1dioaA')); Il ne vous reste plus alors qu'à créer la base de données create database bdcremecrm ; et à donner à votre utilisateurs les bonnes permissions. Code : GRANT SELECT , On peut passer à la dernière phase du déploiement de Crème. Rendez-vous dans le répertoire 'creme/'. Il va vous falloir créer un fichier de configuration propre à votre machine. Ce fichier doit s'appeler local_settings.py Il doit contenir les lignes suivantes (vous devrez si nécessaire remplacer les noms de la table, de l'utilisateur et son mot de passe par les valeurs que vous avez défini précédemment) : Code : # -*- coding: utf-8 -*- Ensuite, vous devez revenir dans le répertoire 'cremecrm/' (et ne pas rester dans le répertoire 'creme/') ; il vous suffit de taper : Code : cd .. Avec la commande suivante, vous allez générer votre clé secrète ; il faudra mettre la valeur retournée dans votre local_settings.py, dans la variable SECRET_KEY (entre les '' ; exemple: SECRET_KEY = 'abcd123'): Code : python manage.py build_secret_key Code : python manage.py migrate Puis on remplit la base avec les données initiales (utilisateur administrateur, société initiale, configuration par défaut etc…) : Code : python manage.py creme_populate Enfin on génère les bundles d'assets statiques (CSS et JavaScript) : Code : python manage.py generatemedia Ici , vous pouvez avoir des messages d'erreur parlant d'images non trouvées (voir ci dessous ). Ce n'est pas grave du tout, les choses ont tout de même fonctionné. Code : /usr/lib/python2.7/pkgutil.py:186: ImportWarning: Not importing directory '/usr/local/lib/python2.7/dist-packages/virtualenvwrapper': missing __init__.py Une fois cela fait il ne nous reste plus qu'à lancer le serveur de test en faisant : Code : python manage.py runserver Vous pouvez maintenant vous connecter sur http://localhost:8000 pour voir que votre Crème fonctionne. Mais, et je vais le répéter, ce serveur de développement n'est pas fait pour être utiliser dans un contexte de production. Par exemple, pour mettre en production avec Apache et mod_wsgi, vous pouvez suivre cet autre billet: https://www.cremecrm.com/forum/showthread.php?tid=110 Re: Installation de Crème CRM 1.6 sous Linux - djin - 23-03-2017 Bonjour, Déjà merci pour le travail ! Je m’intéresse à ce CRM. Je me permets de poster car je rencontre certains problèmes en suivant ce tuto (surement dû à certaines lacunes sur linux et les outils utilisés) Dans le bash de quel utilisateur dois je ajouter cette ligne ? Code : export WORKON_HOME=~/Envs Puis je l'ajouter dans le bash de root ? Je suppose qu'il faut également créer le répertoire. La commande Code : mkvirtualenv creme Code : bash: mkvirtualenv : commande introuvable Merci d'avance pour les questions dont les réponses doivent être évidentes pour vous Re: Installation de Crème CRM 1.6 sous Linux - jmarmand - 25-03-2017 Bonjour, Concernant vos questions :
J'espère que cela vous aide. Re: Installation de Crème CRM 1.6 sous Linux - djin - 27-03-2017 Bonjour, Merci de votre retour. Code : root@cremeCRM:/home/administrateur# pip install virtualenvwrapper Je me suis mis en root histoire d’être sur. Je suis sur une Debian 8 si ça peut aider Re: Installation de Crème CRM 1.6 sous Linux - genglert - 27-03-2017 En ce qui me concerne, j'installe le virtualenvwrapper disponible dans les paquets de ma distribution (il est bien disponible chez debian https://packages.debian.org/search?keyw ... ection=all ). Donc "sudo apt-get install virtualenvwrapper" Re: Installation de Crème CRM 1.6 sous Linux - djin - 28-03-2017 En effet il n’était pas installé malgré le Code : sudo pip install virtualenvwrapper Mais malheureusement ça ne passe pas non plus après l'installation : Code : root@cremeCRM:~# apt-get install virtualenvwrapper Je dois vraiment m'y prendre comme une bille ... Merci en tout cas Re: Installation de Crème CRM 1.6 sous Linux - genglert - 28-03-2017 Chez moi non plus mkvirtualenv n'est pas disponible de base en étant root (variable d'environnement PATH différente pour éviter les bêtises). Créez vous un utilisateur spécifique comme indiqué par Jmarmand, et lancez la commande mkvirtualenv en étant identifié comme tel. Re: Installation de Crème CRM 1.6 sous Linux - djin - 28-03-2017 Merci, en effet ça marche mieux ) ! Du coup j'ai continué la procédure et je me heurte à l'erreur Code : Command python setup.py egg_info failed with error code 1 in /tmp/pip-build-gj5msM/pygraphviz quand je lance Code : pip install -r creme/requirements.txt Du coup j'ai testé en root ou avec mon autre user avec la même erreur. J'ai vérifier et graphviz est bien installé Code : root@cremeCRM:~# apt-get install graphviz Désolé d’être le boulet de la journée Re: Installation de Crème CRM 1.6 sous Linux - genglert - 28-03-2017 Citation :Command python setup.py egg_info failed with error code 1 in /tmp/pip-build-gj5msM/pygraphviz Et du coup vous avez regardé ce que dit ce fichier ? Au pire, si c'est le seul paquet qui vous pose problème, vous pourriez toujours ne pas installer pygraphviz, et du coup commenter l'app 'creme.graphs' dans les settings avant de construire la BD ; cette app ne devrait pas trop vous manquer. Re: Installation de Crème CRM 1.6 sous Linux - djin - 29-03-2017 En fait le répertoire complet se supprime en fin de commande donc non je n'ai rien pu voir. Donc j'ai reprise d'un base saine. Installe Debian 8 toute neuve. J'ai donc installé les packet ci dessous en root (car mon compte nommé administrateur n'a pas les droit) Code : apt-get install mysql-server libmysqlclient-dev python-dev libxslt1-dev graphviz graphviz-dev graphviz libgraphviz-dev pkg-config python-pip python-virtualenv mercurial virtualenvwrapper libjpeg-dev En passant ça me règle le problème de pygraphviz Ensuite j'ai modifier la variable d'environnement ci dessous du compte nommé administrateur Code : export WORKON_HOME=~/Envs Code : mkvirtualenv creme Code : workon creme Code : hg clone https://bitbucket.org/hybird/creme_crm Et enfin je passe cette commande Code : pip install -r creme/requirements.txt Code : Command "/home/administrateur/Envs/creme/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-wpbGRM/Pillow/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-Lck_it-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/administrateur/Envs/creme/include/site/python2.7/Pillow" failed with error code 1 in /tmp/pip-build-wpbGRM/Pillow/ Il se trouve que dans include, je n'ai pas de repertoire site Code : (creme) administrateur@cremeCRM:~/Envs/creme/include$ ls -al J'vais y arriver ! J'ai encore pas tout compris ? Merci à vous ! |