Читатели като вас помагат в подкрепа на MUO. Когато правите покупка чрез връзки на нашия сайт, ние може да спечелим комисионна за партньор.
Docker е най-обичаният инструмент за програмиране според проучването за разработчици на Stack Overflow за 2022 г. Той се използва широко в ИТ и революционизира начина, по който внедряваме приложения.
Docker контейнерите са малко подобни на виртуалните машини, но са по-леки и се доставят само с основните необходими елементи на операционната система. За да оцените колко минимални могат да бъдат Docker контейнерите, нека видим как можете да стартирате Ubuntu в Docker.
Стъпка 1: Получаване на изображението на Ubuntu Docker
Ако нямате инсталиран Docker, следвайте нашето ръководство за инсталиране на Docker на Ubuntu. И разбира се, можете също да инсталирате Docker на macOS и Windows.
Docker Hub е препоръчаното хранилище за получаване на публично проверени и официални изображения на Docker. Можете също да използвате Docker Hub, за да управлявате и създавате лични Docker изображения.
Облачни доставчици като Azure и AWS също предоставят Docker хранилища, където можете да хоствате и управлявате вашите персонализирани Docker изображения.
Можете да изтеглите най-новото изображение на Ubuntu, като използвате следната команда:
sudo docker тегли ubuntu
Docker ще изтегли най-новото изображение на вашия компютър, ако все още не сте го съхранили локално.
Ако се интересувате от конкретна версия, просто погледнете наличните тагове на изображението в Docker Hub и след това го изтеглете, като използвате този конкретен таг. Например, за да изтеглите Ubuntu 20.04, изпълнете:
sudoдокердръпнетеubuntu:20.04
Можете да изброите всички изображения на Docker на вашия компютър, като използвате sudo docker изображения команда.
Стъпка 2: Изпълнение на изображението на Ubuntu
Изображението на Docker е просто план на инструкции за изграждане на контейнер. Контейнерът е работещ екземпляр на Docker изображение. За да оживите изображението на Ubuntu, което току-що сте изтеглили, изпълнете следната команда:
sudo docker run -ti --rm ubuntu /bin/bash
Тази команда казва на Docker да стартира контейнера в интерактивен режим на терминал (-ти). The /bin/bash аргументът е начин да кажете на контейнера да работи терминала Bash shell. И накрая, на --rm flag инструктира Docker автоматично да премахне контейнера, след като го спрем.
Шелът стартира като root потребител и терминалът е подобен на това, което получавате в типична Linux система. По подразбиране контейнерът получава произволно име на хост.
Ще забележите също, че изображението няма GUI или много други стандартни инструменти за команден ред, които идват с Ubuntu. Изображението на Ubuntu Docker е с размер само около 78 MB, което е супер леко.
Изпълнение на Linux команди на Ubuntu Docker
Обикновено проверявате информацията за ОС на Linux, като използвате lsb_release -a команда, но в този случай ще откриете, че тази команда не е налична, защото системата Ubuntu няма lsb-ядро пакет, инсталиран по подразбиране. Не забравяйте, че Docker изображенията идват само с основните елементи и нищо друго.
За щастие можем да проверим информацията за ОС използвайки командата cat, който идва като част от обвивката Bash.
котка /etc/os-освобождаване
Както можете да видите от изхода, това е LTS версията на Ubuntu, пусната през 2022 г. Благодарение на силата на Docker, можем да стартираме операционна система, използвайки много минимални системни ресурси.
И тъй като това е просто лека операционна система, можем да инсталираме приложенията, от които се нуждаем, като използваме познатите команди на Ubuntu. Първо актуализирайте изходния код на пакета и го инсталирайте lsb-ядро като напишете:
ап актуализация && подходящо Инсталирай lsb-ядро
Имайте предвид, че не е необходимо да използвате sudo команда, тъй като сте влезли в обвивката на Docker като root потребител.
Веднъж инсталиран, можете да стартирате lsb_release -a команда и този път ще получите някакъв резултат.
Запазване на състоянието на контейнера на Docker
Когато спрете Docker контейнера на този етап, ще загубите всички промени, които сте направили, включително софтуерни актуализации и инсталирани инструменти. Така са проектирани Docker контейнерите; те са лесни за подмяна, спиране и управление.
Както може би знаете досега, Docker е многофункционален инструмент; позволява ви да запазите състоянието на контейнерите, ако желаете. Първо проверете идентификатора на контейнера, като използвате следната команда:
sudo докер ps
Предходната команда изброява всички Docker контейнери на вашия компютър. Изображението на Ubuntu в изхода по-горе има ID 524aa76baafb, вашият ще бъде различен.
Запазете състоянието на контейнера, като изпълните следната команда:
докер ангажирам -p идентификатор_на_контейнера ново_име_на_контейнер
Не забравяйте да замените container_id в следната команда с правилната. Освен това имената на Docker изображения могат да бъдат само с малки букви.
sudo докер ангажирам -стр 524aa76baafb myubuntu
Предходната команда ще постави на пауза контейнера, преди да го запази, и ще създаде ново изображение на Docker с име myubuntu. Новото изображение на Docker ще съдържа всички промени, които сте направили в него. И с това току-що създадохте персонализирано изображение на Ubuntu Docker.
Ако изброите вашите Docker изображения с помощта на sudo docker изображения команда, вашето ново персонализирано изображение трябва да бъде посочено заедно.
Постоянни данни в контейнера на Ubuntu Docker
Друга мощна характеристика на Docker е възможността за запазване или споделяне на данни с хост машината. Има две основни опции: използване на монтирани томове или томове на Docker. Docker се застъпва за последното, защото е по-добро в сравнение с монтираните томове.
Можете да създадете Docker том навсякъде на вашия компютър. Нека го създадем в домашната директория и го кръстим Docker_Share.
sudo mkdir -p Docker_Share
След това спрете контейнера на Ubuntu, като използвате следната команда, замествайки container_id с действителния идентификатор на контейнера Docker:
sudo докер Спри се container_id
И накрая, можем да стартираме изображението на Ubuntu, за да запазим данните, използвайки Docker_Share директория с помощта на командата по-долу. Като алтернатива можете създайте файл за съставяне на докер за лесно стартиране на вашите Docker изображения.
sudo docker run -ti --rm -v ~/Docker_Share:/данни ubuntu /bin/bash
Командата ще стартира изображението на Ubuntu и ще създаде /data директория в контейнера на Docker. The /data директорията е картографирана към Docker_Share папка, която сте създали по-рано.
Имате достъп до всички създадени или модифицирани файлове на /data директория на контейнера, използвайки Docker_Share указател. Обратното също е вярно; Docker ще репликира всички файлови модификации в Docker_Share директория в /data директория на контейнера.
Docker е чудесен заместител на виртуални машини
Docker е много мощна технология, която ви позволява да внедрявате и изпълнявате приложения в безопасна и сигурна среда. Можете да го използвате за широк набор от задачи и в повечето случаи ще се справите добре с олекотен Docker контейнер, вместо с виртуална машина.