Opigno 2.x – Installation du serveur (Composer)

  • Auteur/autrice de la publication :
  • Post category:Non classé

Opigno est un LMS (Learning management system) Open Source, basé sur le CMS Drupal, sous licence GPLv3 permettant de créer et d’administrer des formations et des espaces de collaboration en ligne. Il est né en 2013 et est développé par la société Connect-i. Sa version actuelle est la 2.8, reposant sur le core Drupal 8.

Alternatives Open Source à Opigno :

CE COURS EST DISPONIBLE EN VIDÉO
(VERSION DÉTAILLÉE ET PLUS COMPLÈTE)

Version Française

Comment installer un LMS Open Source – Part 1
Comment installer un LMS Open Source – Part 2

Version Anglaise

How to install an Open Source LMS – Part 1
How to install an Open Source LMS – Part 2

OBJECTIF

L’objectif de cet article est l’installation et la configuration d’un serveur LAMP7 (Linux Apache 2.4 MariaDB 10.3 PHP 7.3) auto-hébergé Opigno en version 2.8 sur une distribution Linux Debian Buster 10.2 64bits (LAMP 1/4).

SCHEMA LOGIQUE

PRÉREQUIS

1. Prérequis avant réalisation

  • Un serveur Debian Buster 10.2 64 bits fonctionnel (installation basique avec utilitaires usuels du système et service SSH)
  • Packages de base supplémentaires : sudo, dnsutils, git, resolvconf, terminator, tree
  • Domaine utilisé : opensharing.priv

2. Configuration réseau initiale

Serveur Opigno
FQDN mylms.opensharing.priv
Adresse IP 192.168.1.10
Réseau 192.168.1.0/24
Passerelle 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4
dns-search opensharing.priv

Contenu initial du fichier /etc/network/interfaces :

sudo nano /etc/network/interfaces
auto lo
iface lo inet loopback

allow-hotplug enp0s3
iface enp0s3 inet static
	address 192.168.1.10
	netmask 255.255.255.0
	network 192.168.1.0
	broadcast 192.168.1.255
	gateway 192.168.1.1
	dns-search opensharing.priv
	dns-nameservers 8.8.8.8 8.8.4.4

Contenu initial du fichier /etc/hosts :

sudo nano /etc/hosts
127.0.0.1       localhost.localdomain                   localhost
192.168.1.10    mylms.opensharing.priv                  mylms

Rmq : L’adresse 127.0.1.1 doit être retirée sur un serveur à IP fixe et remplacée par cette dernière, tel que l’exemple ci-dessus.

Contenu initial du fichier /etc/host.conf :

sudo nano /etc/host.conf
order hosts, bind
multi on

Contenu initial du fichier /etc/resolv.conf (généré automatiquement) :

cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 8.8.8.8
nameserver 8.8.4.4
search opensharing.priv

Rmq : Le fichier /etc/resolv.conf ne doit pas être édité dès lors que le paquet resolvconf a été installé.

Pour prendre en compte les modifications des fichiers de configuration relatifs au réseau, redémarrage du service réseau et de l’interface réseau configurée en IP fixe :

sudo systemctl restart networking
sudo ifup enp0s3

Vérification de la bonne configuration réseau :

ping 8.8.8.8
dig opensharing.fr

RÉALISATION

1. Installation de Apache (LAMP 2/4)

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install apache2 apache2-doc

2. Configuration de Apache (LAMP2/4)

Création d’une configuration minimale pour notre LMS

sudo nano /etc/apache2/sites-available/mylms.conf
<VirtualHost *:80>

   DocumentRoot /var/www/mylmshttps://mylms.opensharing.priv/
</VirtualHost>

<VirtualHost *:443>

   DocumentRoot /var/www/mylmshttps://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
All settings correct for using Composer
Downloading...

Composer (version 1.9.1) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

9. Installation de Opigno via Composer (phase ligne de commande)

sudo mkdir /var/www/mylms/
sudo chown www-data:www-data /var/www/{,mylms}
cd /var/www/mylms/
sudo -u www-data composer create-project opigno/opigno-composer
sudo -u www-data composer update

Redémarrage des services Apache et MariaDB :

sudo systemctl restart mariadb
sudo systemctl restart apache2

10. Installation de Opigno (phase web)

Pour l’installation par le navigateur, il faut se connecter à l’URL suivante :

https://mylms.opensharing.priv/install.php

Accepter l’exception de sécurité liée au certificat auto-signé de notre serveur Apache.

L’interface d’installation par le web se lance alors et nous demande de choisir la langue d’installation :

On renseigne les informations relatives à la base de données :

L’installation du site se lance :

Puis vient l’installation des traductions françaises :

On renseigne ensuite les informations générales relatives au site et à l’administrateur :

On termine avec la finalisation des traductions :

Enfin le back-office de notre LMS s’affiche :

Et voici le front-office de notre LMS :

POUR ALLER PLUS LOIN

1. Effectuer une sauvegarde manuelle complète

mkdir -p /home/sysadmin/backup/2.8/
cd /home/sysadmin/backup/2.8/
sudo tar -czvf backup-opigno-20191206.tar.gz -C /var/www/ mylms/
mysqldump --user=mylmsadmin --password=mylmsadminpw --databases mylmsdb > opigno-20191206.sql

2. Effectuer une restauration manuelle complète

cd /home/sysadmin/backup/2.8/
sudo rm -rf /var/www/mylms/
sudo tar -xzvf backup-opigno-20191206.tar.gz -C /var/www/
sudo mysql -e "DROP DATABASE mylmsdb"
sudo mysql -e "CREATE DATABASE IF NOT EXISTS mylmsdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci"
mysql --user=mylmsadmin --password=mylmsadminpw mylmsdb < opigno-20191206.sql

3. Mettre à jour Opigno LMS

cd /var/www/mylms/
sudo -u www-data composer outdated opigno/opigno_lms
sudo -u www-data composer update --dry-run
sudo -u www-data composer update
sudo -u www-data ./vendor/bin/drush updatedb

4. Vérifier les dépendances d’un module, une mise à jour éventuelle et le mettre à jour :

ex :

sudo -u www-data composer outdated drupal/h5p
sudo -u www-data composer update drupal/h5p --dry-run
sudo -u www-data composer update drupal/h5p

5. Vérifier les dépendances inverses d’un module pour diagnostiquer un problème de mise à jour de celui-ci :

ex 1 :

sudo -u www-data composer prohibits opigno/opigno_lms

ex 2 :

sudo -u www-data composer prohibits drupal/h5p