Такие читатели, как вы, помогают поддерживать MUO. Когда вы совершаете покупку по ссылкам на нашем сайте, мы можем получать партнерскую комиссию.

Согласно опросу разработчиков Stack Overflow за 2022 год, Docker — самый любимый инструмент программирования. Он широко используется в ИТ и произвел революцию в способах развертывания приложений.

Контейнеры Docker немного похожи на виртуальные машины, но они более легкие и содержат только основные необходимые элементы операционной системы. Чтобы оценить, насколько минимальными могут быть контейнеры Docker, давайте посмотрим, как запустить Ubuntu в Docker.

Шаг 1. Получение образа Ubuntu Docker

Если у вас не установлен Docker, следуйте нашему руководству по установка докера на убунту. И, конечно же, вы также можете установить Docker на macOS и Windows.

Docker Hub — рекомендуемый репозиторий для получения общедоступных и официальных образов Docker. Вы также можете использовать Docker Hub для управления и создания частных образов Docker.

Облачные провайдеры, такие как Azure и AWS, также предоставляют репозитории Docker, где вы можете размещать свои собственные образы Docker и управлять ими.

instagram viewer

Вы можете загрузить последний образ Ubuntu с помощью следующей команды:

sudo docker вытащить ubuntu

Docker загрузит последний образ на ваш компьютер, если он еще не сохранен локально.

Если вас интересует конкретная версия, просто просмотрите доступные теги образа в Docker Hub, а затем загрузите его, используя этот конкретный тег. Например, чтобы загрузить Ubuntu 20.04, выполните:

судодокертянутьубунту:20.04

Вы можете перечислить все образы Docker на вашем ПК, используя sudo докер изображения команда.

Шаг 2: Запуск образа Ubuntu

Образ Docker — это просто схема инструкций по созданию контейнера. Контейнер — это работающий экземпляр образа Docker. Чтобы оживить образ Ubuntu, который вы только что скачали, выполните следующую команду:

sudo docker запустить -ti --rm убунту /bin/bash

Эта команда указывает Docker запустить контейнер в интерактивном режиме терминала (-ти). /bin/bash аргумент — это способ сообщить контейнеру о запуске терминал оболочки Bash. Наконец, --rm флаг указывает Docker автоматически удалить контейнер после того, как мы его остановим.

Оболочка запускается от имени пользователя root, а терминал аналогичен тому, что вы получаете в типичной системе Linux. По умолчанию контейнер получает случайное имя хоста.

Вы также заметите, что образ не имеет графического интерфейса или многих других стандартных инструментов командной строки, которые поставляются с Ubuntu. Размер образа Ubuntu Docker составляет всего около 78 МБ, что очень легко.

Запуск команд Linux в Ubuntu Docker

Обычно вы проверяете информацию об ОС в Linux, используя lsb_release -a команду, но в этом случае вы обнаружите, что эта команда недоступна, потому что в системе Ubuntu нет младший бит ядра пакет установлен по умолчанию. Помните, образы Docker содержат только основные элементы и ничего больше.

К счастью, мы можем проверить информацию об ОС с помощью команды кот, который входит в состав оболочки Bash.

кот /etc/os-выпускать

Как видно из вывода, это LTS-версия Ubuntu, выпущенная в 2022 году. Благодаря мощности Docker мы можем запускать ОС, используя минимальные системные ресурсы.

А поскольку это просто облегченная ОС, мы можем установить нужные нам приложения с помощью знакомых команд Ubuntu. Сначала обновите исходники пакета и установите младший бит ядра набрав:

подходящий обновлять && подходящий установить младший бит ядра

Обратите внимание, что вам не нужно использовать судо при входе в оболочку Docker в качестве пользователя root.

После установки вы можете запустить lsb_release -a команда, и на этот раз вы получите некоторый вывод.

Сохранение состояния контейнера Docker

Когда вы остановите контейнер Docker на этом этапе, вы потеряете все сделанные вами изменения, включая обновления программного обеспечения и установленные инструменты. Именно так устроены контейнеры Docker; их легко заменить, остановить и управлять ими.

Как вы, возможно, уже знаете, Docker — универсальный инструмент; это позволяет вам сохранять состояние контейнеров, если вы хотите. Сначала проверьте идентификатор контейнера с помощью следующей команды:

судо докер пс

Предыдущая команда выводит список всех контейнеров Docker на вашем ПК. Изображение Ubuntu в приведенном выше выводе имеет идентификатор 524aa76baafb, у вас будет другой.

Сохраните состояние контейнера, выполнив следующую команду:

докер совершить -p container_id новое_имя_контейнера

Не забудьте заменить идентификатор_контейнера в следующей команде с правильным. Кроме того, имена образов Docker могут быть только строчными.

судо докер совершить -п 524aa76baafb мьюбунту

Предыдущая команда приостановит контейнер перед его сохранением и создаст новый образ Docker с именем мьюбунту. Новый образ Docker будет содержать все внесенные вами изменения. Таким образом, вы только что создали собственный образ Ubuntu Docker.

Если вы перечисляете свои образы Docker с помощью sudo докер изображения команда, ваш новый пользовательский образ должен быть указан вместе.

Сохранение данных в контейнере Ubuntu Docker

Еще одна мощная функция Docker — возможность сохранять или обмениваться данными с хост-компьютером. Есть два основных варианта: использование смонтированных томов или томов Docker. Docker поддерживает последнее, потому что оно лучше по сравнению с подключенными томами.

Вы можете создать том Docker в любом месте на вашем ПК. Давайте создадим его в домашнем каталоге и назовем Docker_Share.

sudo mkdir -p Docker_Share

Затем остановите контейнер Ubuntu с помощью следующей команды, заменив идентификатор_контейнера с фактическим идентификатором контейнера Docker:

судо докер останавливаться идентификатор_контейнера

Наконец, мы можем запустить образ Ubuntu для сохранения данных с помощью Docker_Share каталог с помощью приведенной ниже команды. Кроме того, вы можете создать файл docker-compose чтобы легко запускать образы Docker.

sudo docker run -ti --rm -v ~/Docker_Share:/данные убунту /bin/bash

Команда запустит образ Ubuntu и создаст /data каталог внутри контейнера Docker. /data каталог сопоставляется с Docker_Share папку, которую вы создали ранее.

Вы можете получить доступ к любым созданным или измененным файлам на /data каталог контейнера с помощью Docker_Share каталог. Обратное также верно; Docker будет реплицировать любые изменения файлов в Docker_Share каталог в /data каталог контейнера.

Docker — отличная замена виртуальным машинам

Docker — это очень мощная технология, позволяющая развертывать и запускать приложения в безопасной и надежной среде. Вы можете использовать его для широкого круга задач, и в большинстве случаев вам будет достаточно запустить легкий контейнер Docker вместо запуска виртуальной машины.