Outils pour utilisateurs

Outils du site


documentation:deploiement

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
documentation:deploiement [2018/02/19 09:45]
chloe
documentation:deploiement [2019/02/15 17:03] (Version actuelle)
chloe [Prérequis :]
Ligne 1: Ligne 1:
-#Déploiement+#Déploiement (V0)
  
 +
 +//Environnement de dev//
 +
 +##Prérequis :
 +
 +* Extension solr php  v2.1.0 & Solr 7.6+ (Apache)
 +* PHP 7+
 +* Apache (v2.4)
 +* Java
 +
 +## Lancer SOLR : 
 +   * Aller dans le dossier d'installation et lancer la commande ```bash bin/solr start```
 +   * Si un problème de path **JAVA\_HOME** intervient au moment de lancer la commande, créer une variable d'environnement windows **JAVA\_HOME** avec le chemin du dossier jdk/jre de la version Java installée sur votre machine
 +   * Aller dans le dossier d'installation de SOLR -> dossier solr(version)/server/solr et créer un dossier "zord"
 +   * Aller sur localhost:8983
 +   * menu -> core admin
 +   * **add core**
 +   * **name**: zord
 +   * **instanceDir**: path/to/solr/solr(version)/server/solr/zord/
 +   * laisser **les autres champs par défaut** et cliquer sur "add core"
 +
 +
 +## Créer un VirtualHost sur WAMP ou autre
 +
 +* dans le fichier httpd.conf, inserer le block suivant :
 +
 +<WRAP center round box 60%>
 +   NameVirtualHost zord_dev.test
 +   <VirtualHost zord_dev.test>
 +     DocumentRoot "Path\To\Zord_dev\appli"
 +     ServerName zord_dev.test
 +     Alias /admin "Path\To\Zord_dev\admin"
 +     Alias /openurl "Path\To\Zord_dev\openurl"
 +    <Directory "Path\To\Zord_dev\appli">
 +     DirectoryIndex index.php
 +     Options -Indexes
 +     AllowOverride All
 +     Allow from All
 +     RewriteEngine on
 +    </Directory>    
 +   </VirtualHost>
 +</WRAP>
 +
 +   
 +
 +* Ajouter également le virtualhost dans le fichier c:/system32/drivers/etc/hosts
 +
 +## Créer un utilisateur dans la BDD -> table admin
 +  * Pour créer votre mot de passe: 
 +  - récuperer la valeur de la variable SALT dans config_appli.php, 
 +  - concatenez la avec votre mot de passe (ex: hZP$xzbOOwVLmjuoMonMotDePasse) 
 +  - convertir cette chaîne en SHA256 pour enfin insérer la valeur dans la BDD
 +
 +## Fichiers de config
 +  - ```config_db.php``` -> configurer ```connection_string```, ```user```, ```password```.
 +  - ```config_admin.php``` -> ```php define("PROJECT_FOLDER", "/admin/");```
 +  - ```config_solr.php``` -> ```php define('SOLR_SERVER_PATH', '/solr/zord');```
 +
 +  * Vous pouvez normalement accèder à l'application avec les URLs :
 +  * zord\_dev.test/appli
 +  * zord\_dev.test/admin
 +   
 +
 +## Ajout de revue et indexation
 +   * Rajouter dans Path\To\wamp64\bin\php\php(version)\php.ini la ligne "extension=php_solr.dll" dans le block "Dynamic Extensions"
 +   * dans le menu admin, onglet importation TEI, uploader un xml
 +   * pour procéder à l'indexation, ouvrir une invite de commande dans le dossier "services" de l'appli ZORD, et lancer la commande ```bash php -f services.php indexation```
 +
 +
 +# Déploiement (V1)
 +
 +##Prérequis :
 +
 +* composer
 +* Extension solr php  v2.1.0 & Solr 5.2.1 (Apache)
 +* PHP 5.6
 +* Apache (v2.4)
 +* Java
 +* Jing
 +
 +##Packagist Satis ZORD
 +
 +###Mise en place du repo privé :
 +
 +- dans satis.json, paramétrer la propriété homepage
 +- pour lancer le serveur satis (remplacez {urlduserveursatis} par la propriété homepage précedemment définie) :  
 +   ```php -S {urlduserveursatis} -t zord-satis/```
 +- en allant sur le serveur, vous devriez voir une page comme celle-ci:
 + ![Satis ZORD](https://i.gyazo.com/f2329770886332b61db322f547577eb1.png)
 +
 +###Récupération du repo zord:
 +
 +- Dans un dossier qui servira de répertoire à votre projet droz, ouvrez une invite de commande et tapez :
 + ```composer create-project droz/zord_v1:dev-develop --repository-url={urlduserveursatis}```
 +- Suite à ça, le projet droz sera téléchargé dans ce dossier.
 +
 +
 +## VirtualHost
 +
 +<WRAP center round box 60%>
 +   NameVirtualHost zord_v1.test
 +   <VirtualHost zord_v1.test>
 +     DocumentRoot "Path\To\Zord_v1\webapp"
 +     ServerName calvin_zord_v1.test
 +     Alias /skins path/to/library/portals/Zord_v1/skins
 +     Alias /medias path/to/library/medias
 +     Alias /zoom path/to/library/zoom
 +    <Directory "Path\To\Zord_v1\webapp">
 +     DirectoryIndex index.php
 +     Options -Indexes
 +     AllowOverride All
 +     Allow from All
 +     RewriteEngine on
 +    </Directory>    
 +   </VirtualHost>
 +</WRAP>
 +
 +
 +
 +## SOLR
 +
 +* Comme sur la V0, créer une nouvelle instance solr (en allant dans le dossier solr(version)/server/solr) en créant un dossier que l'on va appeler "zord_v1" par exemple, ainsi qu'un dossier "conf" dans ce dernier. 
 +* Une fois créés, copier le contenu du dossier install/Solr de l'application et coller le dans le dossier "zord\_v1/conf".
 +* Créer un fichier "core.properties" dans "zord\_v1 avec ce contenu :
 + 
 +<WRAP center round box 60%>
 +
 +    #Written by CorePropertiesLocator
 +    #Mon Feb 19 09:44:18 UTC 2018
 +    name=zord_v1
 +    config=solrconfig.xml
 +    schema=schema.xml
 +    dataDir=data
 +
 +</WRAP>
 +
 +
 +## BDD:
 +
 +* Créer une nouvelle base de données et importer le script zord.sql se trouvant dans install/MySQL
 +
 +### ou
 +
 +* Si vous avez déjà une V0 installée, vous pouvez copier la base pour en créer une nouvelle et executer le script update.sql se trouvant dans install/MySQL
 +
 +
 +## Dossier library
 +
 +* Créer un dossier "library" un cran au dessus du dossier de l'application
 +* Son arborescence est la suivante :
 +  * books
 +  * epub
 +  * import
 +  * medias
 +  * metadata
 +  * portals
 +    * zord_v1
 +      * logs
 +      * obfuscate
 +      * skins
 +      * templates
 +      * classes.php
 +      * config.php
 +      * context.json
 +      * database.json
 +      * index.json
 +  * zoom
 +  * zord
 +
 +
 +
 +## Config
 +* Dans le fichier portals/zord\_v1/config.php, si environnement Windows, redéfinir les valeur RELAXNG\_COMMAND et PROCESS\_COMMAND en:
 +    
 + `define('RELAXNG_COMMAND', 'java -jar path\to\jing\jing.jar ${RNG} ${XML}');  
 + `define('PROCESS_COMMAND','start /b path\to\php\php.exe -c path\to\php\php.ini -f ${ZORD} ${PID}');`
 +
 +
 +* Dans le fichier database.json, configurez les paramètres de connexion à la base de données
 +* Dans le fichier index.json, faites pointer le paramètre path vers le dossier de votre instance solr comme ceci : `"\/solr\/zord_v1"` par exemple 
 +* Dans le fichier context.json, configurez les portails comme ci dessous, en remplaçant les paramètres host (et éventuellement secure si la connexion à l'application est en HTTPS)
 +
 +<WRAP center round box 60%>
 +{
 +    "calvin": {
 +        "secure": false,
 +        "url": [
 +            {
 +                "host": "calvin.zord_v1.test",
 +                "path": "\/"
 +            }
 +        ],
 +        "locales": {
 +            "en-EN": {
 +                "title": "Calvin, base Droz",
 +                "categories": {
 +                    "bezecorr": "Correspondance de Théodore de Bèze",
 +                    "thr": "Études et contextes",
 +                    "calvinopuscules": "Calvin, recueil des opuscules (1566)",
 +                    "lit": "Textes littéraires Français",
 +                    "calviniopera_19": "Opera quae supersunt omnia",
 +                    "bibliography": "Bibliotheca Calviniana",
 +                    "calvinomnia": "Ioannis Calvini Opera Omnia",
 +                    "regpasteurs": "Registres de la Compagnie des pasteurs de Genève",
 +                    "regconsistoire": "Registres du Consistoire de Genève",
 +                    "varia": "Varia",
 +                    "regconseil": "Registres du Conseil de Genève à l’époque de Calvin",
 +                    "marguerite": "Marguerite"
 +                }
 +            },
 +            "fr-FR": {
 +                "title": "Calvin, base Droz",
 +                "categories": {
 +                    "bezecorr": "Correspondance de Théodore de Bèze",
 +                    "thr": "Études et contextes",
 +                    "calvinopuscules": "Calvin, recueil des opuscules (1566)",
 +                    "lit": "Textes littéraires Français",
 +                    "calviniopera_19": "Opera quae supersunt omnia",
 +                    "bibliography": "Bibliotheca Calviniana",
 +                    "calvinomnia": "Ioannis Calvini Opera Omnia",
 +                    "regpasteurs": "Registres de la Compagnie des pasteurs de Genève",
 +                    "regconsistoire": "Registres du Consistoire de Genève",
 +                    "varia": "Varia",
 +                    "regconseil": "Registres du Conseil de Genève à l’époque de Calvin",
 +                    "marguerite": "Marguerite"
 +                }
 +            }
 +        }
 +    },
 +    "tlf": {
 +        "secure": false,
 +        "url": [
 +            {
 +                "host": "tlf.zord_v1.test",
 +                "path": "\/"
 +            }
 +        ],
 +        "locales": {
 +            "en-EN": {
 +                "title": "Textes littéraires français",
 +                "categories": {
 +                    "prose": "Prose",
 +                    "poesie": "Poésie",
 +                    "theatre": "Théâtre",
 +                    "correspondance": "Correspondances",
 +                    "essai": "Essais"
 +                }
 +            },
 +            "fr-FR": {
 +                "title": "Textes littéraires français",
 +                "categories": {
 +                    "prose": "Prose",
 +                    "poesie": "Poésie",
 +                    "theatre": "Théâtre",
 +                    "correspondance": "Correspondances",
 +                    "essai": "Essais"
 +                }
 +            }
 +        }
 +    },
 +    "thr": {
 +        "secure": false,
 +        "url": [
 +            {
 +                "host": "thr.zord_v1.test",
 +                "path": "\/"
 +            }
 +        ],
 +        "locales": {
 +            "en-EN": {
 +                "title": "Humanisme et Renaissance",
 +                "categories": {
 +                    "humanisme": "Humanisme",
 +                    "bezecorr": "Correspondance de Théodore de Bèze",
 +                    "bibliography": "Bibliographies",
 +                    "eglisesreformees": "Archives des Églises réformées de France",
 +                    "histoire_art": "Histoire de l'art",
 +                    "histoire_livre": "Histoire du livre",
 +                    "histoire_litteraire": "Histoire littéraire",
 +                    "histoire_medecine": "Histoire de la médecine",
 +                    "histoire_politique": "Histoire politique",
 +                    "histoire_universite": "Histoire de l'université",
 +                    "histoire_scientifique": "Histoire scientifique",
 +                    "rabelaisiennes": "Études rabelaisiennes",
 +                    "reforme": "Réforme et Réformation",
 +                    "regconseil": "Registres du Conseil de Genève à l’époque de Calvin",
 +                    "regpasteurs": "Registres de la Compagnie des pasteurs de Genève",
 +                    "regconsistoire": "Registres du Consistoire de Genève",
 +                    "ronsardiennes": "Études ronsardiennes"
 +                }
 +            },
 +            "fr-FR": {
 +                "title": "Humanisme et Renaissance",
 +                "categories": {
 +                    "humanisme": "Humanisme",
 +                    "bezecorr": "Correspondance de Théodore de Bèze",
 +                    "bibliography": "Bibliographies",
 +                    "eglisesreformees": "Archives des Églises réformées de France",
 +                    "histoire_art": "Histoire de l'art",
 +                    "histoire_livre": "Histoire du livre",
 +                    "histoire_litteraire": "Histoire littéraire",
 +                    "histoire_medecine": "Histoire de la médecine",
 +                    "histoire_politique": "Histoire politique",
 +                    "histoire_universite": "Histoire de l'université",
 +                    "histoire_scientifique": "Histoire scientifique",
 +                    "rabelaisiennes": "Études rabelaisiennes",
 +                    "reforme": "Réforme et Réformation",
 +                    "regconseil": "Registres du Conseil de Genève à l’époque de Calvin",
 +                    "regpasteurs": "Registres de la Compagnie des pasteurs de Genève",
 +                    "regconsistoire": "Registres du Consistoire de Genève",
 +                    "ronsardiennes": "Études ronsardiennes"
 +                }
 +            }
 +        }
 +    }
 +}
 +</WRAP>
 +
 +
 +  
documentation/deploiement.1519029959.txt.gz · Dernière modification: 2019/02/15 13:37 (modification externe)