Proxmox - mettre à jour les conteneurs démarrés

Environnement

L'environnement est fourni à titre indicatif afin d'identifier d'éventuelles divergences de résultats en cas d'utilisation du script dans un environnement proche mais néanmoins différent.

  • Proxmox 8

Description

Ce script met à jour les conteneurs de type Debian.

Script

#!/bin/bash
# running_ct_update.sh
# Mets à jour les conteneurs démarrés

# Lister tous les conteneurs démarrés et mettre leur VMID dans un tableau

declare -a running_ct=( `pct list | grep running | cut -c 1-3` )

# Pour chaque conteneur présent dans le tableau, effectuer les mises à jour

for ct in "${running_ct[@]}";
do
        echo ""
        echo "############################################################"
        echo "conteneur" $ct && pct exec $ct -- bash -c 'hostname -f'
        echo "############################################################"
        echo ""
        pct exec $ct -- bash -c 'dpkg --configure -a'
        pct exec $ct -- bash -c 'apt update --fix-missing'
        pct exec $ct -- bash -c 'apt install -f'
        pct exec $ct -- bash -c 'apt update'
        pct exec $ct -- bash -c 'apt dist-upgrade -y'
        pct exec $ct -- bash -c 'apt clean'
        pct exec $ct -- bash -c 'apt autoremove -y'
        pct exec $ct -- bash -c 'apt autoclean -y'
done