Afficher le texte sourceAnciennes révisionsLiens de retourHaut de page Table des matières 1. Configuration des dépendances 1.1 Librairies de base - Ekylibre 2 1.2 Installation de PDFtk 2 1.2 Installation de Postgresql 9.6 Arrêter le serveur Postgresql 9.6 Installer le serveur Postgresql 9.6 Installer PostGIS 2.3 requis pour le serveur Postgresql 9.6 ou supérieur 2. Installation de Ruby 2.1 Installation de Ruby via les paquets 2.2 Installation de Ruby via RBENV 3. Récupération du code 4. Configuration de la base de données 4.1 Création de l'utilisateur PostgreSQL 4.2 Configuration de l'accès à la base de données 5. Installer les paquets gems 6. Données et instances 6.1 Créer la base de données et le schéma par default 6.2 Créer l'instance de démonstration (développement et recettes) 7. Mise en place de l'url de connexion 8. Lancer le serveur rails Installer Ekylibre v2 sous Mageia 6 L'installation d'Ekylibre en local est à destination des développeurs et non à une mise en production. Cette procédure pour Mageia 6 est en cours de rédaction. Veuillez ne pas l'utilisez tant que ce message/bandeau n'a pas été retiré. La procédure ci-dessous a été testé avec succès pour Ekylibre 2.XX.XX (0x/201x) guide, erp, administration 1. Configuration des dépendances 1.1 Librairies de base - Ekylibre 2 su - root urpmi imagemagick graphicsmagick tesseract tesseract-ara tesseract-eng tesseract-fra tesseract-jpn tesseract-spa libreoffice poppler poppler-data ghostscript ghostscript-common java-1.8.0-openjdk lib64icu58 redis postgis postgresql9.6-contrib postgresql9.6-server lib64curl-devel lib64geos-devel lib64proj-devel lib64pq5 lib64xml2-devel lib64xslt-devel lib64zlib-devel lib64icu-devel lib64qtwebkit2.2-devel java-1.8.0-openjdk-devel postgresql9.6-devel qtbase5-common-devel lib64qt5webkit-devel lib64qt5webkitwidgets-devel exit Note 1 : le logiciel pdftk n'est plus fournie avec Mageia 6, il faudra l'installer manuellement en le compilant. L'installation via un paquet pdftk-2.02-1.mga5.x86_64.rpm prévu pour Mageia 5 ne fonctionne pas : le paquet lib64gcj fournit /usr/lib64/libgcj.so.16 mais pdftk veut /usr/lib64/libgcj.so.15. En créant un lien symbolique nommé libgcj.so.15 vers libgcj.so.16, lors du lancement de pdftk, il y a l'erreur “libgcj failure: gcj linkage error. Incorrect library ABI version detected. Aborting. ” Note 2 : Mageia 6 est fournie avec Postgis 2.2 qui fonctionne avec PostgreSQL 9.6 même si ce n'est pas recommandé (http://trac.osgeo.org/postgis/wiki/UsersWikiPostgreSQLPostGIS). Note 3 : si vous êtes avec Mageia 5 32bits, remplacer lib64xxx par libxxx. 1.2 Installation de PDFtk 2 su - root urpmi gcc gcc-c++ gcc-java lib64gcj16 lib64gcj-devel fastjar unzip wget wget https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk-2.02-src.zip unzip pdftk-2.02-src.zip cd pdftk-2.02-dist/pdftk Editez le fichier Makefile.Redhat puis a) remplacez les lignes export VERSUFF= export CXX= $(TOOLPATH)g++$(VERSUFF) export GCJ= $(TOOLPATH)gcj$(VERSUFF) export GCJH= $(TOOLPATH)gcjh$(VERSUFF) export GJAR= $(TOOLPATH)fastjar$(VERSUFF) par export VERSUFF=-5.5.0 export CXX= $(TOOLPATH)g++ export GCJ= $(TOOLPATH)gcj export GCJH= $(TOOLPATH)gcjh export GJAR= $(TOOLPATH)fastjar b) remplacez la ligne export CXXFLAGS= -Wall -Wextra -Weffc++ -O2 par export CXXFLAGS= -Wall -Wextra -Weffc++ -O2 -I/usr/include/libgcj$(VERSUFF)/ make -f pdftk/Makefile.Redhat Problème pour trouver certaines classes Java los de la compilation à corriger. ... exit 1.2 Installation de Postgresql 9.6 Les versions disponibles de Postgres sous Mageia 6 sont la 9.4 et la 9.6. Ekylibre (version 2.0.0 et ultérieure) a désormais besoin de la 9.5 ou supérieure pour fonctionner. De plus Ekylibre a besoin de Postgis, or Postgis 2.2 est la seule version disponible sur Mageia 6. Malheureusement l'utilisation Postgis 2.2 n'est pas recommandé avec Postgresl 9.6 et de plus Postgis 2.2 fourni par Mageia a été compilé avec les librairies de Postgresql 9.5. Ce dernier point provoque le non fonctionnement de la création de la base de données d'Ekylibre. Il faut donc installer Postgresql 9.6 de manière manuelle et ensuite compiler Postgis 2.3 avec cette version de Postgresql. Sinon lors de l'exécution de la commande JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk rake db:create db:migrate vous aurez le message d'erreur suivant qui indique que Postgis 2.2 a été compilé avec les librairie de Postgresql 9.5 et non Postgresql 9.6 : [user@localhost ekylibre (master)]$ JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk rake db:create db:migrate JAVA_HOME has not been set automatically because it's not Debian here. W, [2018-03-05T21:35:43.275287 #28034] WARN -- : [SKYLIGHT] [1.5.0] Running Skylight in development mode. No data will be reported until you deploy your app. (To disable this message for all local apps, run `skylight disable_dev_warning`.) rake aborted! ActiveRecord::StatementInvalid: PG::InternalError: ERROR: incompatible library "/usr/lib64/postgresql/postgis-2.2.so": version mismatch DÉTAIL : Server is version 9.6, library is version 9.5. : CREATE EXTENSION IF NOT EXISTS "postgis" SCHEMA postgis; /home/user/ekylibre/ekylibre/lib/ekylibre/schema.rb:9:in `setup_extensions' /home/user/ekylibre/ekylibre/lib/tasks/db/tenanting.rake:14:in `block (2 levels) in <top (required)>' /home/user/ekylibre/ekylibre/lib/tasks/db/tenanting.rake:19:in `block in <top (required)>' Caused by: PG::InternalError: ERROR: incompatible library "/usr/lib64/postgresql/postgis-2.2.so": version mismatch DÉTAIL : Server is version 9.6, library is version 9.5. /home/user/ekylibre/ekylibre/lib/ekylibre/schema.rb:9:in `setup_extensions' /home/user/ekylibre/ekylibre/lib/tasks/db/tenanting.rake:14:in `block (2 levels) in <top (required)>' /home/user/ekylibre/ekylibre/lib/tasks/db/tenanting.rake:19:in `block in <top (required)>' Tasks: TOP => db:extensions (See full trace by running task with --trace) Arrêter le serveur Postgresql 9.6 Dans le menu de Mageia (en bas à gauche sur KDE), aller dans Outils → Outils système → Centre de Controle de Mageia (MCC). Dans le panneau gauche du Centre de Controle de Mageia, cliquez sur Système Cliquez ensuite sur Gérer les services systèmes en les (dés)activant A la ligne postgresql, cliquez sur le bouton Arrêter A la ligne postgresql, décochez la case au démarrage si vous ne voulez pas que Postgresql 9.6 redémarre à votre prochain démarrage de Mageia Installer le serveur Postgresql 9.6 Aller sur la page http://www.enterprisedb.com/products-services-training/pgbindownload et choisissez une version de Postgresql 9.6 ou supérieure et le type de votre système (32 ou 64 bits). Ici la version 9.6.8 en 64 bits est choisie comme exemple : postgresql-9.6.8-1-linux-x64-binaries.tar.gz Copiez l'archive de postgresql que vous avez télécharger dans le répertoire /opt su - root cp /home/user/Documents/postgresql-9.6.8-1-linux-x64-binaries.tar.gz /opt Décompressez l'archive et mettez les bons droits cd /opt tar xzf postgresql-9.6.8-1-linux-x64-binaries.tar.gz chown -R root:root pgsql cd /opt/pgsql mkdir data chown -R postgres:postgres data mkdir backups chown -R postgres:postgres backups mkdir log chown -R postgres:postgres log Création de la base système de Postgresql su - postgres cd /opt/pgsql/bin ./initdb --pgdata=/opt/pgsql/data --encoding=UTF8 --locale=fr_FR.UTF-8 The files belonging to this database system will be owned by user "postgres". This user must also own the server process. The database cluster will be initialized with locale "fr_FR.UTF-8". The default text search configuration will be set to "french". Data page checksums are disabled. fixing permissions on existing directory /opt/pgsql/data ... ok creating subdirectories ... ok selecting default max_connections ... 100 selecting default shared_buffers ... 128MB selecting dynamic shared memory implementation ... posix creating configuration files ... ok running bootstrap script ... ok performing post-bootstrap initialization ... ok syncing data to disk ... ok WARNING: enabling "trust" authentication for local connections You can change this by editing pg_hba.conf or using the option -A, or --auth-local and --auth-host, the next time you run initdb. Success. You can now start the database server using: ./pg_ctl -D /opt/pgsql/data -l logfile start exit Lors de la création de la base de données d'Ekylibre, on a le message d'erreur suivant par defaut. Il faudra donc remplcer la librairies zlib fournie par Postgresql 9.6.8 par celle fournie par Mageia. Message d'erreur : [user@localhost ekylibre (master)]$ JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk rake db:create db:migrate JAVA_HOME has not been set automatically because it's not Debian here. W, [2018-03-05T22:32:28.569593 #7746] WARN -- : [SKYLIGHT] [1.5.0] Running Skylight in development mode. No data will be reported until you deploy your app. (To disable this message for all local apps, run `skylight disable_dev_warning`.) rake aborted! ActiveRecord::StatementInvalid: PG::InternalError: ERROR: could not load library "/opt/pgsql/lib/postgresql/rtpostgis-2.3.so": /opt/pgsql/bin/../lib/libz.so.1: version `ZLIB_1.2.9' not found (required by /lib64/libpng16.so.16) : CREATE EXTENSION IF NOT EXISTS "postgis" SCHEMA postgis; /home/user/ekylibre/ekylibre/lib/ekylibre/schema.rb:9:in `setup_extensions' /home/user/ekylibre/ekylibre/lib/tasks/db/tenanting.rake:14:in `block (2 levels) in <top (required)>' /home/user/ekylibre/ekylibre/lib/tasks/db/tenanting.rake:19:in `block in <top (required)>' Caused by: PG::InternalError: ERROR: could not load library "/opt/pgsql/lib/postgresql/rtpostgis-2.3.so": /opt/pgsql/bin/../lib/libz.so.1: version `ZLIB_1.2.9' not found (required by /lib64/libpng16.so.16) /home/user/ekylibre/ekylibre/lib/ekylibre/schema.rb:9:in `setup_extensions' /home/user/ekylibre/ekylibre/lib/tasks/db/tenanting.rake:14:in `block (2 levels) in <top (required)>' /home/user/ekylibre/ekylibre/lib/tasks/db/tenanting.rake:19:in `block in <top (required)>' Tasks: TOP => db:extensions (See full trace by running task with --trace) [user@localhost ekylibre (master)]$ Correctif : cd /opt/pgsql/lib/ mv libz.so.1 libz.so.1.ORI cp -p /usr/lib64/libz.so.1 . ls -l libz* Lancement du serveur Postgresql 9.6 ou supérieur su - postgres cd /opt/pgsql/bin [postgres@localhost bin]$./pg_ctl --pgdata=/opt/pgsql/data --log=/opt/pgsql/log/pg-server.log start server starting Vérification que le serveur est bien accessible avec l'interpréteur de commande SQL en ligne de commande [postgres@localhost bin]$ /opt/pgsql/bin/psql psql.bin (9.6.8) Type "help" for help. postgres=# \list List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+----------+----------+-------------+-------------+----------------------- postgres | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | template0 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres (3 rows) postgres=# \q [postgres@localhost bin]$ Installer PostGIS 2.3 requis pour le serveur Postgresql 9.6 ou supérieur Il va falloir compiler PostGIS pour Postgresql à partir des sources. Sur la page http://postgis.net/source/ , télécharger le fichier https://download.osgeo.org/postgis/source/postgis-2.3.6.tar.gz Installer et désinstaller différents paquets RPM : su - root urpme postgis urpmi gdal lib64gdal-devel exit Compiler Postgis et l'installer dans /opt pour fonctionner avec Postgresql 9.6 su - root cd /tmp cp /home/user/Téléchargements/postgis-2.3.6.tar.gz /tmp tar xzf postgis-2.3.6.tar.gz cd postgis-2.3.6 ./configure --prefix=/opt/postgis-2.3.6 --with-pgconfig=/opt/pgsql/bin/pg_config make make install exit 2. Installation de Ruby Nous vous conseillons fortement d'installer ruby par l'intermédiaire de RBENV (chapitre suivant) afin d'avoir un contrôle plus fin sur votre environnement de travail et les futures migrations. Il s'agit d'installer l'interpréteur du langage de développement Ruby (nous vous conseillons d'installer Ruby via RBENV) Plus d'informations sur le langage de développement Ruby : Ruby sur Wikipedia Avant de commencer, veuillez vérifier que les paquets suivants sont bien installés : su - root urpmi git lib64readline-devel exit 2.1 Installation de Ruby via les paquets L'interpréteur en version 2.2.3, du langage de développement Ruby, est le minimum requis à partir de la version 2 d'Ekylibre. Plus d'informations sur le langage de développement Ruby : Ruby sur Wikipedia Installation impossible avec Mageia actuellement. Il faut donc utiliser la procédure nommée “Installation de Ruby via RBENV” ci-dessous pour installer Ruby sur Mageia. Il faut Ruby 2.2.3, or Mageia 6 a Ruby 2.2.5 ou supérieur (2.2.8) dans ses dépôts. 2.2 Installation de Ruby via RBENV * Nous allons installer Ruby via RBENV, ce qui permettra d'évoluer vers les futures versions de Ruby Note : Utilisez cette installation pour Mageia 6 et prenez la 2.2.3 même si la 2.2.5 est sortie. Le logiciel Ruby s'installera alors dans /home/NOM_DE_VOTRE_COMPTE_UTILISATEUR_LINUX/.rbenv/shims/ruby git clone https://github.com/sstephenson/rbenv.git ~/.rbenv echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc echo 'eval "$(rbenv init -)"' >> ~/.bashrc source ~/.bashrc Note : Si vous passez par un proxy, il faut remplacer la commande git clone https://github.com/sstephenson/rbenv.git ~/.rbenv par https_proxy=http://ip_ou_nom_hote_proxy:port_proxy http_proxy=ip_ou_nom_hote_proxy:port_proxy git clone https://github.com/sstephenson/rbenv.git ~/.rbenv * Puis nous installons le plugin permettant d'installer les versions de Ruby git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build Note : Si vous passez par un proxy, il faut remplacer la commande git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build par https_proxy=http://ip_ou_nom_hote_proxy:port_proxy http_proxy=ip_ou_nom_hote_proxy:port_proxy git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build * Installons maintenant Ruby 2.2.3: Utilisez cette installation pour Mageia 5 et prenez la 2.2.3 même si la 2.2.5 est sortie. Le logiciel Ruby s'installera alors dans /home/NOM_DE_VOTRE_COMPTE_UTILISATEUR_LINUX/.rbenv/shims/ruby rbenv install 2.2.3 Note : Si vous passez par un proxy, il faut remplacer la commande rbenv install 2.2.3 par https_proxy=http://ip_ou_nom_hote_proxy:port_proxy http_proxy=ip_ou_nom_hote_proxy:port_proxy rbenv install 2.2.3 * Paramétrons cette version pour tous nos projets rbenv global 2.2.3 rbenv rehash * Vérifions enfin que Ruby est bien installé ruby -v # Vous devriez avoir un message > ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux] 3. Récupération du code Il faut à cette étape, récupérer les sources depuis Github en clonant le dépôt ekylibre/ekylibre dans le dossier de votre choix aka <dossier> cd /home/<dossier> git clone https://github.com/ekylibre/ekylibre.git Vous devriez avoir un répertoire ekylibre dans <dossier>.. Note : Si vous passez par un proxy, il faut remplacer la commande git clone https://github.com/ekylibre/ekylibre.git par https_proxy=http://ip_ou_nom_hote_proxy:port_proxy http_proxy=ip_ou_nom_hote_proxy:port_proxy git clone https://github.com/ekylibre/ekylibre.git 4. Configuration de la base de données 4.1 Création de l'utilisateur PostgreSQL Créer un utilisateur (ekylibre par exemple) qui a accès à votre serveur de base de données Postgresql Utilisation de l'environnement système du compte postgres : su - root [root@localhost ~]# su - postgres Création d'un nouveau rôle PostgreSQL nommé ekylibre. [postgres@localhost ~]$ createuser -d -P -s ekylibre Enter password for new role: ekylibre Enter it again: ekylibre Attention de bien retenir le mot de passe vous avez renseigné lors de la création de l'utilisateur, car il vous sera demandé par la suite pour la configuration de la base de données. Utilisation de la console Postgresql pour passer une commande SQL de changement de role pour que votre utilisateur puisse créer des schémas [postgres@localhost ~]$ psql psql (9.6.7) Type "help" for help. postgres=# ALTER USER ekylibre SUPERUSER; ALTER ROLE Sortie de la console Postgresql postgres-# \q [postgres@localhost ~]$ exit exit 4.2 Configuration de l'accès à la base de données Renseigner votre configuration de base de données dans le fichier config/database.yml au sein du répertoire du projet ekylibre Pour créer ce fichier par copie, vous pouvez copier le fichier modèle nommé “config/database.yml.sample” qui est dans le répertoire du projet Ekylibre (récupéré via git) vers un nouveau fichier nommé config/database.yml dans ce même répertoire nommé “config”. Ainsi le fichier modèle d'origine nommé “config/database.yml.sample” est conservé et un nouveau fichier nommé config/database.yml est créé avec une configuration de base et servira à la production/developpement/test après adaptation à l'environnement de votre serveur (identifiant, mot de passe, port et IP du serveur, etc …) cd /home/projects/ekylibre cp config/database.yml.sample config/database.yml Remplacer xxxxxxxx par votre utilisateur et yyyyyyyy par son mot de passe Bien penser à décommenter la ligne du host: 127.0.0.1 config/database.yml # PostgreSQL. Versions 8.2 and up are supported. # # Install the pg driver: # gem install pg # On OS X with Homebrew: # gem install pg -- --with-pg-config=/usr/local/bin/pg_config # On OS X with MacPorts: # gem install pg -- --with-pg-config=/opt/local/lib/postgresql84/bin/pg_config # On Windows: # gem install pg # Choose the win32 build. # Install PostgreSQL and put its /bin directory on your path. # # Configure Using Gemfile # gem 'pg' # gem 'activerecord-postgis-adapter' # default: &default adapter: postgis encoding: unicode # For details on connection pooling, see rails configuration guide # http://guides.rubyonrails.org/configuring.html#database-pooling pool: 5 postgis_extension: [] # Schema search path. The server defaults to $user,public schema_search_path: public,postgis # The specified database role being used to connect to postgres. # To create additional roles in postgres see `$ createuser --help`. # When left blank, postgres will use the default role. This is # the same name as the operating system user that initialized the database. username: xxxxxxxx # The password associated with the postgres role (username). password: yyyyyyyy # Connect on a TCP socket. Omitted by default since the client uses a # domain socket that doesn't need configuration. Windows does not have # domain sockets, so uncomment these lines. host: 127.0.0.1 development: <<: *default database: ekylibre_development # The TCP port the server listens on. Defaults to 5432. # If your server runs on a different port number, change accordingly. #port: 5432 # Minimum log levels, in increasing order: # debug5, debug4, debug3, debug2, debug1, # log, notice, warning, error, fatal, and panic # Defaults to warning. #min_messages: notice # Warning: The database defined as "test" will be erased and # re-generated from your development database when you run "rake". # Do not set this db to the same as development or production. test: <<: *default database: ekylibre_test # As with config/secrets.yml, you never want to store sensitive information, # like your database password, in your source code. If your source code is # ever seen by anyone, they now have access to your database. # # Instead, provide the password as a unix environment variable when you boot # the app. Read http://guides.rubyonrails.org/configuring.html#configuring-a-database # for a full rundown on how to provide these environment variables in a # production deployment. # # On Heroku and other platform providers, you may have a full connection URL # available as an environment variable. For example: # # DATABASE_URL="postgres://myuser:mypass@localhost/somedatabase" # # You can use this database configuration with: # # production: # url: <%= ENV['DATABASE_URL'] %> # production: <<: *default database: ekylibre_production username: ekylibre password: <%= ENV['EKYLIBRE_DATABASE_PASSWORD'] %> 5. Installer les paquets gems Attention, selon votre système JAVA n'est pas forcément installer dans /usr/lib/jvm/java-7-openjdk. Informations sur le gestionnaire de paquets RubyGems sur Wikipedia. Se placer dans le répertoire Ekylibre et installer bundler et les gems. Vérifier que le fichier/lien symbolique /usr/lib/jvm/java-1.8.0-openjdk existe via la commande ls. cd /path/to/ekylibre gem install bundler export QMAKE=/usr/lib64/qt5/bin/qmake JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk NOKOGIRI_USE_SYSTEM_LIBRARIES=1 bundle install Si vous passez par un proxy pour accéder à l'Internet, alors il faut l'indiquer dans les lignes de commande comme cela : https_proxy=http://ip_ou_nom_hote_proxy:port_proxy http_proxy=ip_ou_nom_hote_proxy:port_proxy gem install bundler https_proxy=http://ip_ou_nom_hote_proxy:port_proxy http_proxy=ip_ou_nom_hote_proxy:port_proxy JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk NOKOGIRI_USE_SYSTEM_LIBRARIES=1 bundle install Note : Si vous avez une erreur du genre 'Gem::Ext::BuildError: ERROR: Failed to build gem native extension.' pendant l'exécution de la commande … bundle install, alors relancer cette commande et si cela ne marche pas tentez de retirer le paramètre https_proxy=http://ip_ou_nom_hote_proxy:port_proxy de votre ligne de commande si vous l'avez utilisé. Note2 : En utilisant un proxy, si vous avez une erreur du genre concernant ofx parser Fetching git://github.com/lcoq/ofx-parser.git fatal: unable to connect to github.com: github.com[0: 192.xx.xx.xx]: errno=Connexion terminée par expiration du délai d'attente alors pour corriger le problème, il faut modifier une ligne dans le fichier Gemfile dans le répertoire racine d'Ekylibre, remplacer la ligne: gem 'ofx-parser', github: 'lcoq/ofx-parser', branch: 'master' par gem 'ofx-parser', git: 'https://github.com/lcoq/ofx-parser.git', branch: 'master' 6. Données et instances 6.1 Créer la base de données et le schéma par default JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk RAILS_ENV=development rake db:create db:migrate Le JAVA_HOME est précisé dans la commande sinon un message d'alerte 'JAVA_HOME has not been set automatically because it's not Debian here.' est renvoyé par le logiciel. 6.2 Créer l'instance de démonstration (développement et recettes) Créer l'instance de démonstration qui sert lors du développement et des recettes. Récupérer les données de démonstration cd home/.../ekylibre/db mkdir first_runs cd first_runs git clone https://github.com/ekylibre/first_run-demo.git demo Note la création du répertoire first_runs dans le répertoire db à la racine d'ekylibre est nécessaire sinon vous aurez le message d'erreur suivant : rake aborted! Errno::ENOENT: Aucun fichier ou dossier de ce type @ rb_sysopen - /home/user/ekylibre/db/first_runs/demo/manifest.yml /home/user/ekylibre/lib/ekylibre/first_run.rb:46:in `launch' Note : Si vous passez par un proxy pour accéder à l'Internet, alors il faut l'indiquer dans les lignes de commande comme cela : https_proxy=http://ip_ou_nom_hote_proxy:port_proxy http_proxy=ip_ou_nom_hote_proxy:port_proxy git clone https://github.com/ekylibre/first_run-demo.git demo Mettez vous dans le bon répertoire, lancer la création de l'instance de démonstration et le chargement des données liées en précisant une limite. JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk RAILS_ENV=development rake first_run name=demo folder=demo max=80 Note : Si vous passez par un proxy pour accéder à l'Internet, alors il faut l'indiquer dans les lignes de commande comme cela : https_proxy=http://ip_ou_nom_hote_proxy:port_proxy http_proxy=ip_ou_nom_hote_proxy:port_proxy JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk RAILS_ENV=development rake first_run name=demo folder=demo max=80 Note : Si vous avez une erreur indiquant que le schema demo existe deja dans Postgresql en lançant la commande 'rake first_run name=demo folder=demo max=80', alors il faudra supprimer les 2 bases existantes. Exemple sur Mageia : [user@localhost ~]$ su - root Mot de passe : [root@localhost ~]# su - postgres [postgres@localhost ~]$ psql psql (9.4.6) Type "help" for help. postgres=# \dn List of schemas Name | Owner --------+---------- public | postgres (1 row) postgres=# \l List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges ----------------------+----------+----------+-------------+-------------+----------------------- ekylibre_development | ekylibre | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | ekylibre_test | ekylibre | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | postgres | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | template0 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | fr_FR.UTF-8 | fr_FR.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres (5 rows) postgres=# drop database ekylibre_development; DROP DATABASE postgres=# drop database ekylibre_test; DROP DATABASE postgres=# \q [postgres@localhost ~]$ exit logout [root@localhost ~]# exit déconnexion Pour supprimer l'utilisateur ekylibre, ce sera : postgres=# DROP USER IF EXISTS ekylibre; et \du pour lister les utilisateurs/roles 7. Mise en place de l'url de connexion Modifier votre fichier hosts pour ajouter l'url de l'instance (demo.ekylibre.lan par exemple) sudo pluma /etc/hosts /etc/hosts 127.0.0.1 localhost demo.ekylibre.lan # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 8. Lancer le serveur rails Concernant le first run de démo les identifiants sont les suivants : identifiant : admin@ekylibre.org mot de passe : 12345678 Ils sont définis dans le fichier /home/…/ekylibre/db/first_runs/demo/manifest.yml Lancer votre serveur (en étant dans le répertoire du projet ekylibre) cd home/.../ekylibre foreman s Le serveur Ruby sera totalement lancé lorsque vous verrez des lignes qui ressemblent aux lignes suivantes dans votre console/terminal : 12:46:56 job.1 | 2016-08-16T12:46:56.101Z 5480 TID-gqo7ybwyg INFO: Running in ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux] 12:46:56 job.1 | 2016-08-16T12:46:56.101Z 5480 TID-gqo7ybwyg INFO: See LICENSE and the LGPL-3.0 for licensing details. 12:46:56 job.1 | 2016-08-16T12:46:56.101Z 5480 TID-gqo7ybwyg INFO: Upgrade to Sidekiq Pro for more features and support: http://sidekiq.org 12:46:56 job.1 | 2016-08-16T12:46:56.223Z 5480 TID-gqo7ybwyg INFO: Starting processing, hit Ctrl-C to stop Note: Auparavant “rails s” était utilisé à la place de foreman s IMPORTANT 1 : Si votre navigateur web utilise un proxy, DESACTIVEZ-LE ! çà empêche l'utilisation du nom d’hôte demo.ekylibre.lan et l'accès à la page d'identification d'Ekylibre. IMPORTANT 2: Il semblerait que l'authentification sur la version de démo d'Ekylibre ne fonctionne qu'en passant par le nom d’hôte http://demo.ekylibre.lan et NON via http://IP_du_serveur d'Ekylibre. Lancer votre navigateur (pas internet explorer bien sur qui, comme chacun sait, ne fait pas partie des navigateurs ;) ) et essayer d'accéder à l'URL http://demo.ekylibre.lan:8080. Note : Auparavant l'URL du serveur était sur le port 3000 au lieu de 8080 Vous devriez voir l'écran de connexion d'Ekylibre. Si c'est le cas, c'est gagné ! Il vous reste ensuite à renseigner les informations du compte (identifiant et mot de passe) qui est indiqué ci-dessus. Pour arrêter le serveur Ruby, appuyez sur les touches CTRL + C dans la console/terminal où vous avez lancé le serveur Ruby d'Ekylibre. L'arret sera effectif lorsque vous verrez des lignes du genre : 12:52:16 job.1 | 2016-08-16T12:52:16.989Z 5480 TID-gqo7ybwyg INFO: Shutting down 12:52:17 job.1 | 2016-08-16T12:52:17.039Z 5480 TID-gqo8qmlrk INFO: Scheduler exiting... 12:52:17 job.1 | 2016-08-16T12:52:17.039Z 5480 TID-gqo7ybwyg INFO: Terminating quiet workers 12:52:17 job.1 | 2016-08-16T12:52:17.039Z 5480 TID-gqo8qnwfk INFO: Scheduler exiting... 12:52:17 system | sending SIGTERM to all processes 12:52:17 job.1 | 2016-08-16T12:52:17.601Z 5480 TID-gqo7ybwyg INFO: Bye! fr/guides/installation-on-mageia-6.txt Dernière modification: 2018/03/07 19:26(modification externe)