要把 Docker 版本從 29 降到 28,同時保留原本的容器不受影響

要把 Docker 從 29 降到 28,同時保留原本的容器不受影響,核心思路是:容器與映像檔資料都存放在 /var/lib/docker,只要在降版本過程中不刪除這個資料目錄,容器就能繼續使用。


🛠️ 降版本步驟(以 Ubuntu/Debian 為例)

1. 確認目前版本

docker --version

2. 停止 Docker 服務

sudo systemctl stop docker

3. 備份容器與映像檔資料

雖然不會刪除,但建議先備份:

sudo tar -czvf docker-backup.tar.gz /var/lib/docker

4. 移除 Docker 29

sudo apt remove docker-ce docker-ce-cli containerd.io

5. 查找可用版本

apt-cache madison docker-ce

找到 28.x.x 的版本號(例如 5:28.0.0-1~ubuntu.22.04)。

6. 安裝指定版本

sudo apt install docker-ce=5:28.0.0-1~ubuntu.22.04 \
                 docker-ce-cli=5:28.0.0-1~ubuntu.22.04 \
                 containerd.io

7. 啟動 Docker

sudo systemctl start docker

8. 驗證容器是否仍在

docker ps -a

原本的容器應該都還在,因為 /var/lib/docker 沒有被刪除。


⚠️ 注意事項

  • 不要執行 apt purge 或手動刪除 /var/lib/docker,否則容器與映像檔會消失。
  • 建議安裝最新的 28.5.x 修訂版,因為早期 28.0.0 有安全漏洞。
  • 如果你有使用 Docker Compose,也要確認 Compose 版本與 Docker 28 相容。

✅ 總結:只要在降版本過程中保留 /var/lib/docker,容器與映像檔就不會受影響。

Also See

12
1:23 AM - December 07, 2025
1:23 AM - December 07, 2025
1:23 AM - December 07, 2025
1:23 AM - December 07, 2025
1:23 AM - December 07, 2025
1:23 AM - December 07, 2025
1:23 AM - December 07, 2025
1:23 AM - December 07, 2025
1:23 AM - December 07, 2025
1:23 AM - December 07, 2025
8:20 PM - December 06, 2025
8:20 PM - December 06, 2025