meta données pour cette page
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
aide:docker_etudiants [07/06/2017 17:37] j.chantrein [Images disponibles] |
aide:docker_etudiants [24/02/2021 12:12] (Version actuelle) j.chantrein [Nos images docker chez vous] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ^ [[technique: | ||
+ | |||
====== Utilisation de docker ====== | ====== Utilisation de docker ====== | ||
Si toutefois, vous ne trouviez pas la réponse à vos questions sur cette page, vous pouvez venir poser vos questions à Jean-Mathieu en H105. | Si toutefois, vous ne trouviez pas la réponse à vos questions sur cette page, vous pouvez venir poser vos questions à Jean-Mathieu en H105. | ||
+ | |||
===== Problèmes récurrents ===== | ===== Problèmes récurrents ===== | ||
- | * Je n'ai plus d' | + | Voir [[aide:docker|Fondements |
- | --> Soit vous ne supprimez pas assez souvent (voir pas du tout) vos conteneurs. Les conteneurs ne sont pas faits pour stocker des informations. Ils doivent être utilisés pour fournir un environnement (un serveur, une application). Les données importantes (si il y en a) doivent être localisées en dehors du conteneur. C'est le cas dans les alias que vous fournissent les enseignants (l' | + | |
- | + | ||
- | | + | |
- | docker rm `docker ps -aq` | + | |
- | # Pour info: docker ps -a liste en mode verbeux tout les conteneurs (lancés ou à l' | + | |
- | + | ||
- | <note important> | + | |
- | + | ||
- | docker run --rm -e DISPLAY=$DISPLAY -v / | + | |
- | + | ||
- | Cela permet de supprimer le conteneur dès que celui-ci est arrêté. | + | |
- | </ | + | |
- | + | ||
- | --> Soit vous avez trop d' | + | |
- | + | ||
- | docker images # liste les images | + | |
- | docker rmi mon_image # supprime l' | + | |
- | + | ||
- | --> Dans le cas ou vous auriez quand même des données importantes dans un conteneur. Voici une méthode pour les pérenniser : | + | |
- | + | ||
- | docker commit nom_conteneur nom_nouvelle_image # Permet de créer l' | + | |
- | docker rm -f nom_conteneur # Supprime le conteneur avec les données sensibles | + | |
- | docker run -it nom_nouvelle_image /bin/bash # Lance un conteneur avec les données sensibles qui désormais persistent dans l' | + | |
- | + | ||
- | <note important> | + | |
- | + | ||
- | # docker rmi nom_nouvelle_image | + | |
- | + | ||
- | Vous perdez les données sensibles liées à l' | + | |
| | ||
===== Dans tous les cas ===== | ===== Dans tous les cas ===== | ||
Ligne 48: | Ligne 22: | ||
Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B) | Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B) | ||
... | ... | ||
- | ===== Sur les portables M1 M2 ===== | ||
- | |||
- | ==== Utilisation d'un serveur apache php mysql avec phpmyadmin ==== | ||
- | |||
- | docker load -i php-dev.tar | ||
- | rm php-dev.tar | ||
- | alias @php-dev=' | ||
- | @php-dev | ||
- | |||
- | Voir [[aide: | ||
- | ===== Sur les postes AIO L3 ===== | ||
- | <note important> | + | ===== Sur les postes AIO (salles de tps) ===== |
<note important> | <note important> | ||
- | <note important> | ||
==== Alias ==== | ==== Alias ==== | ||
- | Tout les alias concernant docker sont préfixés par _. Pour lister toute les commandes possibles concernant docker, il vous suffit | + | Tout les alias concernant docker sont préfixés par _. Pour lister toute les commandes possibles concernant docker, il vous suffit |
- | $ _ | + | $ alias | grep " |
- | + | ||
- | et d' | + | |
==== Commandes utiles ==== | ==== Commandes utiles ==== | ||
Ligne 78: | Ligne 38: | ||
_showImages # Liste les images disponibles | _showImages # Liste les images disponibles | ||
_clean # Permet de supprimer tous les conteneurs, à utiliser en cas de problème | _clean # Permet de supprimer tous les conteneurs, à utiliser en cas de problème | ||
+ | | ||
==== Images disponibles ==== | ==== Images disponibles ==== | ||
=== Serveur php mysql === | === Serveur php mysql === | ||
- | | + | |
Permet de lancer un serveur php mysql avec interface phpmyadmin, création d'un répertoire $HOME/ | Permet de lancer un serveur php mysql avec interface phpmyadmin, création d'un répertoire $HOME/ | ||
Ligne 93: | Ligne 54: | ||
<note important> | <note important> | ||
- | < | + | === Serveur PostgreSQL === |
- | === Serveur postgreSql === | + | Il faudra travailler dans le répertoire / |
- | == Mono utilisateur == | + | |
+ | == Version mono-utilisateur == | ||
_postgresqlDev_mono | _postgresqlDev_mono | ||
- | Permet de lancer un serveur postgreSql en mode utilisateur unique. Vous disposez de tout les droits sur la base. Une base postgres a été créée par défaut. | + | Permet de lancer un serveur postgreSql en mode utilisateur unique. Vous disposez de tout les droits sur la base. Une base postgres a été créée par défaut. D' |
- | @pgsqlDev: | + | @pgsqlDev: |
- | #postgresql | + | #nom_base |
- | == Multi utilisateurs == | + | == Version multi-utilisateurs == |
- | | + | |
- | Permet de lancer un serveur postgreSql en mode utilisateur multiple(i.e.: | + | Permet de lancer un serveur postgreSql en mode utilisateur multiple (i.e.: les bases sont accessibles via les autres postes du réseaux local). Vous disposez de tout les droits sur la base. Une base " |
- | @pgsqlDev: | + | @pgsqlDev: |
- | #postgresql | + | #nom_base |
- | Ou depuis un autre poste avec le client psql directement sur la machine (i.e. sans avoir à lancer de conteneur), On admet qu'un conteneur a été lancé sur le poste g105-1 et que l'on souhaite se connecter à la base depuis le poste g105-2: | + | Après création d'une base et attribution des droits, un autre utilisateur peut accéder à la base créée |
- | @g105-2: | + | @g105-2:~$ psql -h g105-1 -U postgres |
- | #postgresql | + | #nom_base |
- | ou sur une base nommé " | + | == Documentation == |
- | @g105-2:~$psql -h g105-1 -U postgres -d maSuperBase | + | Une documentation (en français) très complète pour l' |
- | # | + | |
- | === Environnement de développement android (SDK) === | + | ===== Sur les portables M1 M2 ===== |
- | _androidDev | + | ==== Utilisation d'un serveur apache php mysql avec phpmyadmin ==== |
- | Permet de lancer un environnement de développement android (SDK), création d'un répertoire | + | docker load -i php-dev.tar |
+ | rm php-dev.tar | ||
+ | alias @php-dev='docker run --rm -it --name phpDev -p 80:80 -p 3306:3306 -v $HOME/Mes_projets_web:/ | ||
+ | @php-dev | ||
- | @androidDev: | + | Voir [[aide:docker_etudiants# |
- | + | ||
- | Vous pouvez lancez l' | + | |
- | _androidDev: | ||
- | | ||
- | === Environnement de développement c++/Qt SDK === | ||
- | |||
- | _cppDev | ||
- | |||
- | Permet de lancer un environnement de développement c++/Qt SDK, création d'un répertoire $HOME/ | ||
- | |||
- | @cppDev: | ||
- | | ||
- | Vous pouvez lancez les alias décrit au dessus du prompt (kdevelop, qtcreator, ...) | ||
===== Nos images docker chez vous ===== | ===== Nos images docker chez vous ===== | ||
- | Nous mettons à votre disposition des images docker que vous utiliserez pour certains enseignements. Vous pouvez tout a fait récupérer ces images pour les utiliser chez vous. Toutes les images sont disponible sous forme d' | + | Nous mettons à votre disposition des images docker que vous utiliserez pour certains enseignements. Vous pouvez tout a fait récupérer ces images pour les utiliser chez vous. Toutes les images sont disponible sous forme d' |
Ligne 177: | Ligne 128: | ||
=== Lancement des conteneurs === | === Lancement des conteneurs === | ||
- | <note important> | + | <note important> |
vous@votre_pc$ xhost +local: | vous@votre_pc$ xhost +local: | ||
Ligne 183: | Ligne 134: | ||
</ | </ | ||
- | * Pour android-dev.tar: | + | * Pour php7-dev-v2.1.tar: |
- | + | ||
- | vous@votre_pc$ docker load -i android-dev.tar | + | |
- | vous@votre_pc$ docker run --rm -e DISPLAY=$DISPLAY -v / | + | |
- | + | ||
- | * Pour php-dev.tar: | + | |
- | + | ||
- | vous@votre_pc$ docker load -i php-dev.tar | + | |
- | vous@votre_pc$ docker run --rm -it --name phpDev -p 80:80 -p 3306:3306 -v $HOME/ | + | |
- | + | ||
- | * Pour cpp-dev.tar: | + | |
- | vous@votre_pc$ docker load -i cpp-dev.tar | + | vous@votre_pc$ docker load -i php-dev-v2.1.tar |
- | vous@votre_pc$ docker run --rm -it --name | + | vous@votre_pc$ docker run --rm -it --name |
* Pour postgresql-dev.tar: | * Pour postgresql-dev.tar: | ||
vous@votre_pc$ docker load -i postgresql-dev.tar | vous@votre_pc$ docker load -i postgresql-dev.tar | ||
- | vous@votre_pc$ docker | + | vous@votre_pc$ docker run -it --name postgresqlDev -v $HOME/ |