老机器上的 python
版本还是 10.1
👇
─➤ docker run -it --rm python:3.10-buster python --version
Python 3.10.1
新机器上的 python
版本是 10.4
👇
─➤ docker run -it --rm python:3.10-buster python --version
Python 3.10.4
我想把老机器上的 3.10-buster
也变为 10.4
docker
有什么命令可以升级镜像的?
我并不想: 先删除镜像,再拉取镜像。因为删不掉(奇怪的依赖关系)
我希望可以有类似下面的命令来让 docker 自动从 docker hub 升级镜像版本 👇
docker pull python:3.10-buster --upgrade
重新拉取了一下,发现有更新的,但是却没有更新到最新
原来的
重新拉取
拉取之后,发现有更新了
但是现在是 2023.10.12,Python 3.11.6 都发布了
可能是因为
python:3.11-buster
本身就是没有更新到 3.11.6 吧去 dockerhub 看了一下,确实,buster + 3.11 最后停留在 3.11.4 了
如果需要 3.11.6 可以指定更新的 debian 版本,比如拉取 docker pull python:3.11-bullseye 或者 python:3.11-bookworm
或者直接指明 patch version,比如 python:3.11.6-bullseye 或者 python:3.11.6-bookworm
但不是每次执行 docker pull 都会更新本地镜像的
比如
我本地的 python:3.10-bullseye 是两年前拉取的,里面是 python3.10.0
此时我执行
docker pull python:3.10-bullseye
居然和我说,我本地的就已经是最新的了!太离谱了
所以我换了一台机器,换了一台之前没有拉取过 python:3.10-bullseye 的处女机
可以看到,在新的机器上,这个 python:3.10-bullseye 里面的 python 就是最新的 Python 3.10.13
python:3.10-bullseye
的问题我解决了换了一个 docker 镜像源就好了
原来的
现有的
这个时候就正常了