Étiquette : LXC

  • Installer des images docker dans un conteneur LXC Proxmox

    Depuis la version 9.1 de proxmox il est possible de créer des conteneurs lxc à partir d’image docker. Voici comment faire

    1 – Télécharger l’image docker

    • Se rendre sur docker hub pour trouver l’image que l’on veux
    • Copier l’url en ignorant la partie hub.docker.com/r/

    Dans notre exemple on copie itzg/minecraft-bedrock-server

    • Sur Proxmox aller dans Local puis CT Templates
    • Cliquer sur Pull from OCI Registry
    • Dans Reference : mettre ce que l’on a copier puis cliquer sur Query Tags
    • Dans tag on va retrouver tous les tags des versions de notre image
    • On choisi la version que l’on veux puis on fais Download

    Notre image a bien été rajoutée dans les CT Templates

    2 – Créer le conteneur LXC

    • On cliques sur Create CT
    • Remplir le CT Id, le hostname, le password et le confirm password (comme pour tous les conteneurs LXC)
    • Bien penser à laisser cocher Unprivileged et Nesting (Attention, certaines images docker peuvent demander des conteneurs privilégiés et dans ce cas décocher unpriviliged, mais cela nuit à la sécurité dans le sens où le root du conteneur sera alors root de l’hôte)
    • Dans template, on choisi notre image Docker
    • Continuer avec Disks, CPU, Memory
    • Dans Network, il faut obligatoirement mettre, au minimum l’ipv4 en statique et définir une ip v4, au risque d’avoir une erreur (si on n’a pas d’ipv6, on mets en static mais on ne rempli rien)
    • Plus qu’à finir avec DNS et confirm et notre Conteneur est crée

    3 – Paramétrage

    Certaines images docker demandent des paramètres. Les paramètres se trouvent sur l’image dans options puis Environment

    • Sélectionner Environment puis Edit
    • On peux alors rajouter toutes les variables d’environnement que l’on veux via « Add Variable »
    • En général les variables possibles sont données par le créateur de l’image sur la page docker hub

    4 – Démarrage du conteneur et Tests

    • On démarre le conteneur comme n’importe quel conteneur
    • Puis on peux tester en lançant minecraft et en se connectant sur le serveur
  • Utiliser ProxMox en ligne de commandes

    Quelques lignes de commandes utiles pour pouvoir utiliser proxmox en ligne de commandes

    1 – Mettre à jour les modèles de conteneurs

    pveam update

    2 – Lister les modèles disponibles

    pveam available

    on peux filtrer avec l’argument –section suivi de la section, par exemple

    pveam available --section system

    on peux aussi faire un | grep après la commande pour grep suivant le texte

    pveam available --section system | grep ubuntu

    3 – Télécharger un modèle pour qu’il soit disponible dans ct templates

    pveam download local nomdumodele, par exemple

    pveam download local debian-12-turnkey-zoneminder_18.0-1_amd64.tar.gz

    4 – Lister les modèles de ct templates

    pveam list local

    5 – Lister les conteneurs lxc

    pct list

    6 – Voir la configuration d’un conteneur

    pct config idduconteneur

    on peux aussi voir la configuration directement dans un fichier pour le modifier à chaud

    nano /etc/pve/lxc/idconteneur.conf

    7 – Entrer directement dans le shell d’un conteneur

    pct enter idduconteneur

    on quitte avec exit

    8 – Démarrer ou arrêter un conteneur

    pct start idduconteneur
    pct shutdown idduconteneur

    9 – Modifier la configuration d’un conteneur à chaud

    pct set idduconteneur -optionamodifier valeur

    10 – Créer un conteneur

    pct create id image \
    -- hostname nom \
    -- cores nombresdecoeur \
    -- memory memoire \
    -- swap swap \
    -- rootfs emplacementdisque:taille \
    -- net0 informations reseau
    -- unprivileged (0 ou 1) \
    -- features lesoptions \
    -- tags lestags \
    -- password motdepasseduroot \
    -- start (0 pour pas automatique, 1 pour automatique)

    11 – Supprimer un conteneur

    pct destroy idduconteneur --purge

    attention, le conteneur dois être arrêté

  • Pouvoir se connecter en SSH sur une machine LXC Proxmox

    Toute petite astuce très rapide mais qui peux en sauver plus d’un. Lorsque l’on crée une machine LXC sur proxmox il nous demande le mot de passe root. on le mets et on peux facilement ce connecter en console sur proxmox, par contre impossible de se connecter en ssh

    Pour pallier à ce problème c’est relativement simple

    Sur la console proxmox on va ouvrir le fichier /etc/ssh/sshd_config

    nano /etc/ssh/sshd_config

    Décommenter puis modifier la ligne PermitRootLogin prohibit-password pour mettre PermitRootLogin yes

    Enregistrer le fichier avec CTRL+X puis y puis entrée

    On redémarre ssh

    systemctl restart ssh

    La connexion en ssh est possible