Как създадох перфектния Docker инсталационен скрипт за Ubuntu

Днес ми остана малко свободно време и реших да подобря един от старите си скриптове за инсталиране на Docker в Ubuntu. Имам няколко сървъра, на които често трябва да инсталирам Docker, и всеки път преглеждам официалната документация, което отнема време. Затова реших да създам универсален, стабилен и напълно автоматизиран скрипт, който да прави всичко вместо мен.
Защо го направих?
Официалната документация на Docker предоставя ясни инструкции, но:
- Изисква ръчно копиране на команди
- Няма проверки за грешки
- Не поддържа лесно инсталиране на конкретни версии
- Не се справя добре с вече инсталирани стари версии
Моят скрипт решава всички тези проблеми.
Какво прави скриптът?
- Автоматично открива версията на Ubuntu
- Работи както с
lsb_release
, така и с/etc/os-release
за максимална съвместимост.
- Работи както с
- Премахва стари версии на Docker
- Ако има остатъчни пакети, скриптът ги чисти преди новата инсталация.
- Поддържа стабилен и test канал
- Може да изберете
--channel stable
(по подразбиране) или--channel test
.
- Може да изберете
- Инсталира конкретни версии
- Пример:
sudo ./install-docker.sh --version 24.0
- Пример:
- Добавя потребителя в
docker
групата- Няма нужда да го правите ръчно след инсталацията.
- Проверява успешността на инсталацията
- Пуска
hello-world
контейнер, за да се увери, че всичко работи.
- Пуска
- Показва полезни команди
- След инсталацията извежда списък с често използвани Docker команди.
Как да го използвате?
1. Сваляне на скрипта:
curl -O https://gist.githubusercontent.com/fantomas4o/319a06f824b1c140b9d7de6f134757c5/raw/598b2532dcf2f903d598c766fd90291ec244b664/install-docker.sh
Или:
curl -O https://gist.fedia.eu/urocibg/dc32b55ef36643c8af98a44ef8dd7569/raw/HEAD/install-docker.sh
Даваме права за изпълнение:
chmod +x install-docker.sh
2. Стандартна инсталация (най-новата стабилна версия):
sudo ./install-docker.sh
3. Инсталация на конкретна версия:
sudo ./install-docker.sh --version 24.0
4. Инсталация от test канал (за early access версии):
sudo ./install-docker.sh --channel test
Как работи под капака?
Скриптът използва няколко ключови техники:
set -e
– Ако някоя команда се провали, скриптът спира веднага.- Проверки за root права и Ubuntu – Не работи под Windows или без sudo.
- Оптимизирани APT операции – Използва
-qq
за по-чист изход. - Интелигентно обработване на версии – Ако желаната версия не съществува, показва наличните.
Защо да го използвате вместо официалните инструкции?
✔ По-бързо – Няма нужда да копирате множество команди.
✔ По-надеждно – Проверки за грешки на всяка стъпка.
✔ По-гъвкаво – Поддържа конкретни версии и канали.
✔ По-удобно – Автоматично добавя потребителя в docker
групата.
Заключение
Ако често работите с Ubuntu и Docker, този скрипт ще ви спести време и главоболия. Можете да го запазите в ~/bin/
или дори да го разпространите в рамките на вашия екип.
🔗 Скриптът е достъпен в GitHub Gist
Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу:
Donate ☕️ Дарете с PayPalDonate 💳 Дарете с Revolut