在 Docker 里“更新 Ubuntu”通常有两种常见含义,我分别说明一下(你可以对号入座):
如果你已经运行了一个 Ubuntu 容器,比如:
docker run -it ubuntu bash
想更新系统软件包,进入容器后执行:
apt update
apt upgrade -y
可选清理:
apt autoremove -y
apt clean
⚠️ 注意
✅ 推荐做法:更新 Dockerfile,而不是容器
如果你是用 Docker 构建镜像,应该在 Dockerfile 里写:
FROM ubuntu:22.04
RUN apt-get update && \
apt-get upgrade -y && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
然后重新构建:
docker build -t my-ubuntu .
这样更新是持久化的。
如果你指的是宿主机系统(比如 Ubuntu Server):
sudo apt update
sudo apt upgrade -y
sudo apt dist-upgrade -y
Docker 本身不受影响,但建议顺带更新 Docker:
sudo apt install --only-upgrade docker.io
或(官方 Docker):
sudo apt update
sudo apt upgrade docker-ce docker-ce-cli containerd.io
如果你只是想用“最新的 Ubuntu 镜像”:
docker pull ubuntu:latest
查看本地镜像版本:
docker images ubuntu
| 误区 | 正确做法 |
|---|---|
| 在容器里 apt upgrade | 写在 Dockerfile 里 |
| 更新容器 = 更新镜像 | 镜像和容器是分开的 |
| 更新 Ubuntu 镜像 = 更新系统 | 只是更新镜像 |
Docker 中更新 Ubuntu 的正确方式是:更新 Dockerfile 并重新构建镜像,而不是在运行中的容器里升级。
如果你能具体说一下:
我可以给你更精确的操作步骤。