Поиск по сайту:

Docker: установка и основное использование в Ubuntu 18.04 LTS


Это руководство существует для этих версий ОС

  • Ubuntu 18.04 (Bionic Beaver)
  • Ubuntu 15.04 (Vivid Vervet)

На этой странице

  1. Что нужно знать о Docker
    1. Образы Docker
    2. Докер-контейнер
    3. Реестр Docker

    1. Установите Docker из репозитория Ubuntu
    2. Установите Docker из репозитория Docker

    Docker — это проект с открытым исходным кодом, который предоставляет разработчикам и системным администраторам открытую платформу для создания, упаковки и запуска приложений в любом месте в виде облегченного контейнера. Docker автоматизирует развертывание приложений внутри программных контейнеров. Разработка Docker была начата Соломоном Хайксом как внутренний проект в dotCloud, корпоративной PaaS (платформа как услуга), но теперь программное обеспечение поддерживается сообществом докеров и Docker Inc. Подробнее о Docker можно найти в документации здесь https: //docs.docker.com/.

    Для установки Docker требуется 64-битная архитектура, а ядро Linux должно быть версии 3.10 или новее. Здесь я буду использовать Ubuntu Linux.

    Что нужно знать о Докере

    Вот основные термины в мире докеров, которые вы должны знать.

    Докер-образы

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

    Докер-контейнер

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

    Докер Реестр

    Реестр Docker — это хранилище образов Docker. Он предоставляет общедоступные и частные репозитории. Общедоступный реестр Docker называется Docker Hub. Здесь мы можем нажимать и извлекать наши собственные изображения.

    Установка Докера в Ubuntu 18.04

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

    sudo su

    Затем запустите uname -a, чтобы проверить версию работающего в данный момент ядра Linux.

    uname -a

    Вы можете видеть, что я использую версию ядра 4.15.0 с 64-битным ядром (x86_64).

    Чтобы проверить версию Ubuntu, запустите:

    cat /etc/lsb-release

    Команда показывает, что версия Ubuntu — 18.04.

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

    sudo apt-get update
    sudo apt-get upgrade

    Теперь все готово для установки Docker на сервер.

    Чтобы установить Docker, мы можем использовать пакеты из репозитория Ubuntu или пакеты из репозитория Docker.

    Установите Docker из репозитория Ubuntu

    Если вы хотите установить версию докера из репозитория Ubuntu, вы можете запустить команду apt ниже.

    sudo apt install docker.io

    Дождитесь завершения установки, затем вы можете запустить Docker и добавить его во время загрузки с помощью команды systemctl:

    systemctl start docker
    systemctl enable docker

    Вы также можете проверить версию докера:

    docker --version

    И вы получите докер 17.12, установленный из репозитория Ubuntu.

    Установите Docker из репозитория Docker

    Перед установкой docker-ce из репозитория Docker установите некоторые зависимости с помощью команды apt, как показано ниже.

    sudo apt install \
        apt-transport-https \
        ca-certificates \
        curl \
        software-properties-common

    Когда установка будет завершена, добавьте ключ docker и репозиторий docker nightly.

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic nightly" > /etc/apt/sources.list.d/docker-nightly.list

    и обновить репозиторий.

    sudo apt update

    Теперь репозиторий докеров добавлен в систему.

    Проверьте все пакеты докеров, предоставленные репозиторием докеров, с помощью команды apt-cache.

    sudo apt search docker-ce
    sudo apt-cache policy docker-ce

    И вы увидите разные версии докера, как показано ниже.

    Установите его с помощью приведенной ниже команды apt.

    sudo apt install docker-ce

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

    systemctl start docker
    systemctl enable docker

    Теперь проверьте версию докера, установленную в системе.

    docker --version

    И вы получите установленный в системе докер 18.x. Теперь вы можете приступить к созданию контейнера, загрузив образ Docker из реестра Docker.

    Запуск Docker от имени пользователя без полномочий root

    Чтобы запустить Docker от имени обычного пользователя/пользователя без полномочий root, нам нужно добавить нового системного пользователя. Мы добавим нового пользователя с именем hakase, а затем добавим его в группу докеров.

    Добавьте пользователя hakase.

    useradd -m -s /bin/bash hakase
    passwd hakase

    Добавьте использование хакасе в группу докеров.

    usermod -aG docker hakase

    Теперь войдите в систему как пользователь hakase и запустите команду docker.

    su - hakase
    docker run hello-world

    И вы получите hello world от докера.

    Основное использование Docker

    В этом разделе я покажу вам часто используемые параметры команды docker. Например. как загрузить образ докера, создать контейнер и как получить доступ к контейнеру.

    Чтобы создать новый контейнер, вы должны начать с выбора базового образа с ОС, например. Ubuntu или Centos или другой. Вы можете найти базовый образ с помощью команды docker search:

    docker search ubuntu

    Эта команда покажет вам все образы Ubuntu. Вы можете попробовать самостоятельно докер поиска Centos и т.д.

    Теперь пришло время загрузить базовый образ на наш сервер, используйте команду:

    docker pull ubuntu

    Команда docker pull image-name загрузит образ на ваш сервер из реестра docker/DockerHub.

    Теперь вы можете увидеть все загруженные изображения с помощью команды:

    docker images

    Образ Ubuntu был загружен с DockerHub/Docker Registry. Следующим шагом будет создание контейнера из этого образа.

    Чтобы создать контейнер, вы можете использовать docker create или docker run.

    docker create ubuntu:18.04

    Команда docker create создаст новый контейнер, но не запустит его. Итак, теперь вы можете использовать команду запуска:

    docker run -i -t ubuntu:18.04 /bin/bash

    Эта команда создаст и запустит контейнер на основе образа Ubuntu 18.04 и запустит команду /bin/bash внутри контейнера, вы автоматически окажетесь внутри контейнера после выполнения команды.

    Контейнер остановится, когда вы покинете его с помощью команды exit. Если вы хотите, чтобы контейнер работал в фоновом режиме, вам просто нужно добавить параметр -d в команду.

    docker run -i -t -d ubuntu:18.04 /bin/sh -c "while true; do echo hello world; sleep 1; done"

    Примечание:

    /bin/sh -c \пока верно; сделать эхо привет, мир; спать 1; готово\ это скрипт bash, который всегда повторяет \привет слово\.

    Теперь вы можете увидеть, как контейнер работает в фоновом режиме, используя следующую команду:

    docker ps

    или если вы хотите увидеть журналы в результате этой команды bash, вы можете использовать команду:

    docker logs NAMES/ContainerID

    Как я могу получить доступ к оболочке контейнера, который работает в фоновом режиме?

    Эта команда подключит вас к оболочке контейнера:

    docker exec -i -t NAMES/ContainerID /bin/bash

    Войдите в работающий контейнер Docker.

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

    Другая команда, которую вы часто будете использовать:

    docker stop NAME/ContainerID

    Это остановит контейнер, не удаляя его, поэтому вы можете снова запустить его с помощью команды:

    docker start NAME/ContainerID

    Если вы хотите удалить контейнер, сначала остановите его, а затем удалите с помощью команды:

    docker rm NAME/ContainerID

    Это всего лишь краткое введение в установку и базовое использование Docker в Ubuntu. Подробную страницу документации по Docker можно найти здесь.

    Подробное введение в Docker доступно в этой серии руководств Howtoforge: https://linux-console.net/tutorial/how-to-use-docker-introduction/

    Заключение

    Docker — это платформа виртуализации контейнеров с открытым исходным кодом, которая помогает разработчикам развертывать свои приложения, а системным администраторам — управлять приложениями в безопасной среде виртуальных контейнеров. Docker работает на 64-битной архитектуре Intel/AMD, а ядро должно быть выше версии 3.10. С Docker вы можете создавать и запускать свое приложение внутри контейнера, а затем без проблем перемещать свои контейнеры на другие машины, на которых работает Docker.