Voici un aide-mémoire regroupant toutes les actions et commandes que nous avons abordées concernant Docker, MariaDB, Moodle, et le transfert de fichiers :
Aide-mémoire Docker et Moodle
1. Création d’un conteneur avec MariaDB et Moodle
Créer le fichier docker-compose.yml suivant pour configurer ton environnement :
version: '3'
services:
mariadb:
image: bitnami/mariadb:latest
environment:
- MARIADB_ROOT_PASSWORD="unmotdepasse" # Remplace par un mot de passe sécurisé
- MARIADB_DATABASE=bitnami_moodle # Nom de la base de données Moodle
- MARIADB_USER="utilisateurmoodle" # Utilisateur Moodle
- MARIADB_PASSWORD="motdepassemoodle" # Mot de passe de l'utilisateur Moodle
ports:
- "9741:3306" # MariaDB accessible localement via le port 3307
volumes:
- mariadb_data:/bitnami/mariadb
networks:
- moodle-network
moodle:
image: bitnami/moodle:latest
environment:
- MOODLE_DATABASE_HOST=mariadb
- MOODLE_DATABASE_PORT_NUMBER=3306
- MOODLE_DATABASE_USER="utilisateurmoodle"
- MOODLE_DATABASE_PASSWORD="motdepassemoodle"
- MOODLE_DATABASE_NAME=bitnami_moodle
- ALLOW_EMPTY_PASSWORD=no
ports:
- "9742:8080" # Moodle accessible localement via http://localhost:8081
# Moodle en HTTPS accessible via https://localhost:8444 (optionnel)
volumes:
- moodle_data:/bitnami/moodle
- moodledata:/bitnami/moodledata
depends_on:
- mariadb
networks:
- moodle-network
volumes:
mariadb_data:
moodle_data:
moodledata:
networks:
moodle-network:
driver: bridge
Importer une base de données
Pour importer un fichier SQL dans MariaDB :
docker exec -i <nom_du_conteneur_mariadb> /opt/bitnami/mariadb/bin/mariadb -u root -p<MYSQL_ROOT_PASSWORD> <MA_BASE_DE_DONNEE> < /chemin/hote/ma_base_a_importer.sql
Copier des fichiers de l’hôte vers le conteneur
Pour copier un fichier de l’hôte vers le conteneur :
docker cp /chemin/vers/fichier_local_hote <nom_du_conteneur>:/chemin/dans_le_conteneur
Transférer des fichiers vers un VPS avec scp
Pour transférer un fichier de ton ordinateur local vers un VPS :
scp /chemin/vers/fichier_local_ordinateur <utilisateur_ssh>@<adresse_ip_du_vps>:/chemin/de/destination/sur/le/vps
Options utiles :
-rpour copier un répertoire entier.-Ppour spécifier un port SSH autre que 22.
Ressources supplémentaire
- Accéder au conteneur :
docker exec -it <nom_du_conteneur_moodle> /bin/bash
- Vérifier les permissions :
ls -l /bitnami/moodle/moodledata/filedir
- Changer les permissions (si nécessaire) :
chmod -R 755 /bitnami/moodle/moodledata/filedir
Redémarrer le conteneur
Pour appliquer les changements, redémarre le conteneur :
docker-compose restart
ou
docker-compose down suivi de docker-compose up -d
ne pas utiliser docker-compose down -v (car supprime les volumes!!!)
les commandes précédentes doivent etre utilisées dans le meme repertoire que le fichier docker-compose.yml
Remarques
Pour effectuer des modification dans les conteneurs, il faut passer par une console bash.
Si on fait du reverse proxy, ne pas oublié que le ssl est important uniquement sur le premier domaine et qu’il faut ensuite modifier l’url dans le cms.