Je viens de configurer un conteneur Docker avec une image ubuntu:latest
. Selon /etc/lsb-release
, cette image correspond à Ubuntu 14.04. Maintenant, j'aimerais mettre à niveau le système de mon conteneur vers Ubuntu 16.04. J'ai donc installé le paquetage update-manager-core
. Cependant, lorsque je lance do-release-upgrade
, je ne reçois que la sortie suivante:
root@container:~# do-release-upgrade
Checking for a new Ubuntu release
No new release found
Pourquoi ça ne marche pas pour le moment? Cela fonctionnera-t-il à un moment donné? Quels sont les moyens les plus pratiques pour mettre à niveau le conteneur d'Ubuntu version 14.04 à 16.04? Ai-je une autre possibilité que de créer un nouveau conteneur avec Ubuntu 16.04 et de copier toutes les données de l'ancien conteneur dans le nouveau conteneur?
do-release-upgrade -d
est ton ami :)
Les versions LTS ne se proposent pas pour la mise à jour avant la première publication, généralement vers juin ou juillet.
Au moins je suppose c'est le problème. Je viens de mettre à niveau quelques machines fiables pour xenial de cette façon. Je ne vois pas pourquoi cela devrait être différent sous docker, mais si c'est le cas, merci de nous le faire savoir.
Pour mémoire - ce n’est pas la meilleure pratique de Docker pour mettre à jour votre image à partir de l’image, il est conseillé de travailler à partir d’un fichier Docker que vous utiliserez pour créer une nouvelle image à partir de sources mises à jour que vous ferez vivre lorsqu’il transmettra votre teste, puis désactive l'ancienne image. En fin de compte, vous voudriez avoir des images de production qui ne peuvent pas être mises à jour depuis l’image. Docker est toutefois très flexible et vous pouvez l’utiliser à votre guise.
Ce qui précède peut sembler ridiculement exagéré, mais il existe une raison: Docker a toutefois pour objectif premier de forcer votre équipe à documenter des instructions répétables pour la création d’une image, et de les forcer à utiliser un fichier Dockerfile pour vous pris en otage par la connaissance du développeur qui l’a configurée - et par le fait que vous utilisez des sources stables et plus réputées.