Table des matières
Proxmox : utiliser une image Docker (format OCI)
Ressources
Présentation
La version de Proxmox VE 9.1 permet l'importation et l'utilisation d'image au format OCI pour créer des conteneurs LXC.
OCI est une organisation visant à créer un standard pour unifier la façon de stocker les containers.
- opencontainers.org/
Voici quelques registres qui permettent l'hébergement d'images au format OCI :
- Docker hub : docker.io (https://hub.docker.com/)
- Github Container Registry : ghcr.io (https://oalahurikar.github.io/app-dev-blog/Github/Github-Container-Registry)
- Red Hat Quay : quay.io (https://www.projectquay.io/)
- etc.
En cas de problème de droits sur le stockage (solution non testée)
Problème possible lors de l'utilisation d'un NAS :
- La conversion OCI→LXC peut nécessiter de créer/écrire des fichiers et d'ajuster des propriétaires UID/GID dans le rootfs.
* Si le serveur NAS a configuré dans sa directive export, root_squash (mapping qui dégrade root), Proxmox ne peut pas faire les chown/chmod nécessaires pour extraire les couches de l'image OCI entrainant une erreur OS 13.
Solution : privilégiez dans la définition de l'export /etc/exports, le paramètre no_root_squash.
/export/proxmox 192.168.x.0/24(rw,sync,no_root_squash,no_subtree_check)
Puis exécutez la commande
exportfs -ra.
Le no_root_squash est la clé pour que Proxmox (root) puisse lire/écrire et chown le contenu.
Création/configuration d'un stockage dans Proxmox pour importer les images OCI
- Créer un stockage de type Directory :
- Menu Datacenter → Storage → Add → Directory
- Paramètres :
- ID : templates (définir le nom de votre choix)
- Directory : /var/lib/vz (ou un autre chemin de votre choix comme /mnt/templates )
- Content : cochez CT Template
- Cliquez sur Add.
En configurant la valeur Directory avec /var/lib/vz, les templates OCI seront stockés dans le dossier /var/lib/vz/template/cache.
Importer une image OCI
- menu Datacenter → Storage → local → CT Templates,
- cliquez sur Pull from OCI Registry,
- téléchargez l’image OCI après avoir indiqué sa référence, puis cliqué sur le bouton Query Tags pour lister les tags disponibles et choisi le tag voulu.
Exemple pour l'image Docker debian :
Exemple pour l'image Docker rancher/nginx :
Après téléchargement, les images sont disponibles dans le dossier au format tar :
