From 1126b3e7231e06ba30b7f195cd6d28dd35ac6fe0 Mon Sep 17 00:00:00 2001 From: "iliya.saroukha" <iliya.saroukhanian@etu.hesge.ch> Date: Sat, 1 Jun 2024 16:00:29 +0200 Subject: [PATCH] feat: ex2 done (lab8) --- content/08_dockerfiles.md | 56 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/content/08_dockerfiles.md b/content/08_dockerfiles.md index 21e4158..33eff44 100644 --- a/content/08_dockerfiles.md +++ b/content/08_dockerfiles.md @@ -166,3 +166,59 @@ de l'image en étant `root` ne change rien quant aux attributs de l'image et le comportement du container instancié à partir de celle-ci. > prolly, bs ngl + +## Exercice 2 + +### Contenu du `Dockerfile` + +```bash +FROM archlinux:base-devel-20240101.0.204074 + +RUN pacman -Sy && pacman -S imagemagick --noconfirm + +WORKDIR /data + +ENTRYPOINT ["mogrify"] +CMD ["-help"] +``` + +### Commande permetant la fabrication de l'image à partir du Dockerfile + +```bash +docker buildx build . -t imgconvert:1.0 -f Dockerfile.convert +``` + +### Script `mogrifydock.sh` permettant l'utilisation de l'image + +```bash +#!/usr/bin/env bash + +if [ $# -eq 0 ]; then + docker run --rm \ + imgconvert:1.0 + exit 0 +fi + +if [ $# -ne 2 ]; then + echo "Usage: $0 \"<new_format>\" \"<images_to_convert>\"" + exit 1 +fi + +format=$1 +images=$2 + +docker run --rm \ + --volume "$(pwd):/data" \ + --user $(id -u):$(id -g) \ + imgconvert:1.0 -format $format $images +``` + +### Exemple d'utilisation + +Afin de pouvoir convertir toutes les photos `.jpg` du répertoire courant dont +le nom débute par la lettre "a", il est nécessaire d'exécuter le script +`mogrifydock.sh` de la manière suivante : + +```bash +./mogrifydock.sh "png" "a*.jpg" +``` -- GitLab