82 lines
2.9 KiB
Markdown
82 lines
2.9 KiB
Markdown
|
|
**Проблема у несумісності [[Portainer]] CE ↔ Docker 29.0.2**.
|
|||
|
|
Але на Ubuntu 24.04, Docker 29.x ставиться автоматично та ламає мені усю роботу.
|
|||
|
|
# 🔥 КРОК 1 — Видаляємо Docker 29.x
|
|||
|
|
|
|||
|
|
> **ВАЖЛИВО:** контейнери та образи НЕ видаляться, якщо не чіпати `/var/lib/docker`.
|
|||
|
|
`sudo systemctl stop docker sudo apt remove -y docker-ce docker-ce-cli docker-ce-rootless-extras docker-buildx-plugin docker-compose-plugin sudo apt autoremove -y`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 🔥 КРОК 2 — Прибрати старі репозиторії Docker
|
|||
|
|
|
|||
|
|
Бо в них уже лежить Docker 29.x, і apt знову поставить його.
|
|||
|
|
`sudo rm -f /etc/apt/sources.list.d/docker.list sudo rm -f /usr/share/keyrings/docker.asc`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 🔥 КРОК 3 — Додати репозиторій Docker із архівом старих версій
|
|||
|
|
|
|||
|
|
Docker зберігає **всі старі версії** тут:
|
|||
|
|
|
|||
|
|
`https://download.docker.com/linux/ubuntu/dists/`
|
|||
|
|
|
|||
|
|
Для Ubuntu 24.04 (Noble) робимо:
|
|||
|
|
|
|||
|
|
`echo "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/ubuntu noble stable" | sudo tee /etc/apt/sources.list.d/docker.list`
|
|||
|
|
|
|||
|
|
Додаємо ключ:
|
|||
|
|
|
|||
|
|
`curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --yes --dearmor -o /usr/share/keyrings/docker.asc`
|
|||
|
|
|
|||
|
|
Оновлюємо індекс:
|
|||
|
|
|
|||
|
|
`sudo apt update`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 🔥 КРОК 4 — Подивитися всі доступні версії Docker 25.x
|
|||
|
|
|
|||
|
|
`apt-cache madison docker-ce`
|
|||
|
|
|
|||
|
|
Ти побачиш список типу:
|
|||
|
|
|
|||
|
|
`docker-ce | 5:25.0.5-1~ubuntu.24.04~noble | ... docker-ce | 5:24.x.x | ... docker-ce | 5:20.x.x | ...`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 🔥 КРОК 5 — Встановити Docker 25.x
|
|||
|
|
|
|||
|
|
Наприклад, **25.0.5**:
|
|||
|
|
|
|||
|
|
`sudo apt install docker-ce=5:25.0.5-1~ubuntu.22.04~jammy
|
|||
|
|
`sudo apt install docker-ce-cli=5:25.0.5-1~ubuntu.22.04~jammy
|
|||
|
|
`sudo apt install docker-ce-rootless-extras=5:25.0.5-1~ubuntu.22.04~jammy
|
|||
|
|
`sudo apt install docker-buildx-plugin docker-compose-plugin`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 🔥 КРОК 6 — Заборонити оновлення Docker
|
|||
|
|
|
|||
|
|
Щоб Ubuntu не оновила його назад до 29.x:
|
|||
|
|
|
|||
|
|
`sudo apt-mark hold docker-ce docker-ce-cli docker-ce-rootless-extras docker-buildx-plugin docker-compose-plugin`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 🔥 КРОК 7 — Перевірити версію
|
|||
|
|
|
|||
|
|
`docker version`
|
|||
|
|
|
|||
|
|
Має бути щось типу:
|
|||
|
|
|
|||
|
|
`Server: Docker Engine - Community Version: 25.0.5 API version: 1.42`
|
|||
|
|
|
|||
|
|
Portainer CE працює до **API 1.45**, тому все буде норм.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# 🔥 КРОК 8 — Перезапустити Portainer CE
|
|||
|
|
|
|||
|
|
`docker stop portainer docker rm portainer docker run -d \ -p 9443:9443 \ --name portainer \ --restart=always \ -v /var/run/docker.sock:/var/run/docker.sock \ -v portainer_data:/data \ portainer/portainer-ce:2.21.4`
|
|||
|
|
|
|||
|
|
#Portainer #Docker
|