Ci-dessous, les différences entre deux révisions de la page.
sysadmin:docker:extraire_fichier_dans_image [2022/12/21 11:21] – créée yoann | sysadmin:docker:extraire_fichier_dans_image [2022/12/21 15:14] (Version actuelle) – yoann | ||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
- | ====== Docker : extraire | + | ====== Docker : lister ou extraire |
- | On souhaite pouvoir extraire | + | On souhaite pouvoir |
- | Une fois le conteneur | + | <code bash> |
+ | # Création d' | ||
+ | docker container create --name image_extractor my_image: | ||
+ | </ | ||
+ | |||
+ | ===== Obtenir la liste complète des fichiers de l' | ||
+ | |||
+ | Pour obtenir la liste complète des fichiers de l’archive, | ||
<code bash> | <code bash> | ||
- | # Création du conteneur temporaire | + | docker |
- | docker | + | </ |
+ | ===== Extraire un fichier ===== | ||
+ | |||
+ | Utiliser la commande **docker container cp** pour extraire/ | ||
+ | |||
+ | <code bash> | ||
# Extraction du fichier aFile dans le répertoire courant | # Extraction du fichier aFile dans le répertoire courant | ||
docker container cp image_extractor:/ | docker container cp image_extractor:/ | ||
+ | </ | ||
+ | |||
+ | ===== Extraire le système de fichiers complet ===== | ||
+ | |||
+ | Pour extraire le système de fichier complet visible par le conteneur on peut utiliser **docker container export** et **tar**. On crée ainsi une archive contenant l' | ||
+ | |||
+ | <code bash> | ||
+ | # Création d'une archive tar à contenant l' | ||
+ | docker container export image_extractor > image_files.tar | ||
+ | </ | ||
+ | |||
+ | ===== La commande docker image save ===== | ||
+ | |||
+ | Une autre façon d' | ||
+ | |||
+ | <code bash> | ||
+ | docker image save my_image: | ||
+ | </ | ||
+ | |||
+ | L' | ||
+ | |||
+ | Ci-dessous pour exemple une archive produite avec une image busybox | ||
+ | < | ||
+ | docker image save busybox: | ||
+ | tar tf docker_busybox_latest.tar | ||
+ | 22667f53682a2920948d19c7133ab1c9c3f745805c14125859d20cede07f11f9.json | ||
+ | a13131da00574c4f311d65e64e5bf7bfbffdeb8a029d2c605522506871b80354/ | ||
+ | a13131da00574c4f311d65e64e5bf7bfbffdeb8a029d2c605522506871b80354/ | ||
+ | a13131da00574c4f311d65e64e5bf7bfbffdeb8a029d2c605522506871b80354/ | ||
+ | a13131da00574c4f311d65e64e5bf7bfbffdeb8a029d2c605522506871b80354/ | ||
+ | manifest.json | ||
+ | repositories | ||
+ | </ | ||
+ | |||
+ | Ce format peut s' | ||
+ | |||
+ | |||
+ | Cette commande peut être utilisée conjointement avec **docker image load** pour transférer des images d'un serveur Docker à l' | ||
+ | |||
+ | <code bash> | ||
+ | # Sauvegarde une image dans une archive | ||
+ | docker image save my_image: | ||
- | # Suppression du conteneur temporaire | + | # Charger une image à partir d'une archive |
- | docker | + | docker |
</ | </ | ||
- | < | ||
- | Cela suppose que l'on connaît le chemin d' | ||
- | </ | ||
===== Extraire un fichier de configuration ===== | ===== Extraire un fichier de configuration ===== | ||
Ligne 31: | Ligne 82: | ||
* https:// | * https:// | ||
+ | * https:// |