Слухайте, ну хто з нас не ставив той Docker усоте. Сідаєш, думаєш - та шо там, три команди, зараз. А воно тобі: то ключ протермінований, то репозиторій не від того дистрибутива, то codename чужий. І ти вже сидиш годину, воюєш з apt, замість того щоб пити каву і робити щось корисне.
Що потрібно зробити?#
Узяти голий Debian 13 і один раз поставити Docker по-людськи: з офіційного репозиторію Docker, зі справжнім ключем і правильним codename - щоб більше до цього не вертатися. А щоб ти не вірив мені на слово, усю сесію я записав прямо в терміналі, без монтажу.
З чим працюю?#
| |
Чистий Debian 13 (Trixie), нічого зайвого ще не стоїть. Далі все роблю від root.
Усе, що нижче - це те, що ти бачив у записі, тільки вже можна копіювати.
Спочатку - елементарна гігієна#
Оновлюємо список пакетів і ставимо те, без чого далі нікуди: сертифікати, curl і gnupg для роботи з ключем.
| |
Нічого героїчного. Якщо curl і gnupg вже стоять - Debian чесно скаже «already the newest version» і піде далі. Не лякайся.
Кладемо ключ туди, де йому місце#
Стара звичка apt-key add померла ще за Debian 11, царство їй небесне. Тепер ключ репозиторію живе окремим файлом, а не валяється одним спільним звалищем на всю систему. Робимо каталог під ключі й кладемо туди ключ Docker:
| |
Зверни увагу: шлях - linux/debian, а не linux/ubuntu. І ось тут починається найцікавіше.
Та сама халепа з codename#
У доброї половини інструкцій в інтернеті (і, чесно скажу, у моїх старих нотатках теж) у цьому місці зашито ubuntu і codename noble. Скопіював, вставив - і apt потім дивиться на тебе, як на дурника: нема такого репозиторію.
Бо Debian 13 - це не noble, це trixie. І щоб не вписувати його руками щоразу (а завтра вийде Debian 14, і ти знов забудеш), хай codename підставиться сам - із /etc/os-release:
| |
Одна команда - і в тебе завжди правильний рядок під той дистрибутив, на якому ти реально сидиш. Хоч Debian 13, хоч Ubuntu, хоч що вийде за три роки. dpkg --print-architecture так само сам розбереться, amd64 в тебе чи arm64.
І власне Docker#
Тепер, коли apt знає, звідки брати, - оновлюємо список ще раз і ставимо все господарство: сам двигун, CLI, containerd, та два плагіни - buildx і compose.
| |
Отут Debian задумається на хвильку - треба підтягнути десь сотню мегабайт. Саме час на ту каву, про яку я казав на початку.
Перевіряємо, що воно живе#
| |
Якщо останнє видало тобі привітне «Hello from Docker!» - вітаю, ти щойно підняв і одразу прибрав за собою перший контейнер (на те --rm). Служба в автозапуску, compose - через пробіл, як новий плагін, а не старий окремий docker-compose через дефіс.
І все. Ніякого бубну, ніякого шаманства з протермінованими ключами. Один раз зробив правильно - і далі вже думаєш про цікаве: що в тому Docker запустити.
Записано на чистому Debian 13 (Trixie) у домашній пісочниці. Те, що бачиш у віконці вище, - реальний вивід системи, а не намальований.



