web-dev-qa-db-fra.com

Est-ce que apt-get dist-upgrade est requis dans le conteneur Docker?

Image Docker d'Ubuntu de Node Source exécute apt-get upgrade, et non apt-get dist-upgrade, pour installer la dernière version de tous les packages.

apt-get dist-upgrade est considéré comme une commande permettant de mettre à niveau les packages liés au noyau. Dans le conteneur Docker, les packages de noyau ne sont pas installés car le noyau de l'hôte est utilisé et apt-get upgrade semble suffisant.

Cependant, la page de manuel de apt-get dit:

dist-upgrade in addition to performing the function of upgrade,
also intelligently handles changing dependencies with new versions
of packages

Selon cela, d'autres packages peuvent nécessiter l'exécution de apt-get dist-upgrade pour installer le dernier correctif.

Existe-t-il de tels packages nécessitant apt-get dist-upgrade dans les versions actuelles ou antérieures d'Ubuntu? Si de tels packages existent, nous devons exécuter dist-upgrade même dans le conteneur Docker.

2
Jumpei Ogawa

En général, vous allez vouloir utiliser upgrade plutôt que dist-upgrade.

En général, sauf si vous avez un problème ou sentez que vous en savez plus que les développeurs de docker, mieux vaut utiliser les valeurs par défaut.

Si la mise à niveau rencontre des problèmes, dist-upgrade est une solution potentielle.

la mise à niveau met à jour les nouveaux packages lorsque de nouvelles versions sont disponibles, mais ne supprime parfois pas les packages et n'installe pas de packages supplémentaires. dist-upgrade va mettre à jour et si nécessaire ajouter ou supprimer des paquets.

Vous devriez toujours vérifier ce que apt-get vous dit lors de la mise à niveau et consulter la liste des paquets avec dist-upgrade.

Pour plus d'informations, voir

Qu'est-ce que "dist-upgrade" et pourquoi met-il à niveau plus que "upgrade"?

et

Pourquoi utiliser apt-get upgrade au lieu d'apt-get dist-upgrade?

1
Panther

Je dirais que vous ne devriez même pas utiliser upgrade: reconstruisez plutôt l'image avec --no-cache et exécutez la paire update et install habituelle, qui récupérera les dernières versions d'un paquet. .

0
giorgiosironi