Как установить докер на ubuntu
Install Docker Engine on Ubuntu
Estimated reading time: 11 minutes
Docker Desktop for Linux
Docker Desktop helps you build, share, and run containers easily on Mac and Windows as you do on Linux. Docker handles the complex setup and allows you to focus on writing the code. Thanks to the positive support we received on the subscription updates, we’ve started working on Docker Desktop for Linux which is the second-most popular feature request in our public roadmap. If you are interested in early access, sign up for our Developer Preview program.
To get started with Docker Engine on Ubuntu, make sure you meet the prerequisites, then install Docker.
Prerequisites
OS requirements
To install Docker Engine, you need the 64-bit version of one of these Ubuntu versions:
Ubuntu 16.04 LTS “Xenial Xerus” end-of-life
Ubuntu Linux 16.04 LTS reached the end of its five-year LTS window on April 30th 2021 and is no longer supported. Docker no longer releases packages for this distribution (including patch- and security releases). Users running Docker on Ubuntu 16.04 are recommended to update their system to a currently supported LTS version of Ubuntu.
Uninstall old versions
It’s OK if apt-get reports that none of these packages are installed.
Supported storage drivers
Docker Engine uses the overlay2 storage driver by default. If you need to use aufs instead, you need to configure it manually. See use the AUFS storage driver
Installation methods
You can install Docker Engine in different ways, depending on your needs:
Most users set up Docker’s repositories and install from them, for ease of installation and upgrade tasks. This is the recommended approach.
Some users download the DEB package and install it manually and manage upgrades completely manually. This is useful in situations such as installing Docker on air-gapped systems with no access to the internet.
In testing and development environments, some users choose to use automated convenience scripts to install Docker.
Install using the repository
Before you install Docker Engine for the first time on a new host machine, you need to set up the Docker repository. Afterward, you can install and update Docker from the repository.
Set up the repository
Update the apt package index and install packages to allow apt to use a repository over HTTPS:
Add Docker’s official GPG key:
Use the following command to set up the stable repository. To add the nightly or test repository, add the word nightly or test (or both) after the word stable in the commands below. Learn about nightly and test channels.
Install Docker Engine
Update the apt package index, and install the latest version of Docker Engine and containerd, or go to the next step to install a specific version:
Got multiple Docker repositories?
If you have multiple Docker repositories enabled, installing or updating without specifying a version in the apt-get install or apt-get update command always installs the highest possible version, which may not be appropriate for your stability needs.
To install a specific version of Docker Engine, list the available versions in the repo, then select and install:
a. List the versions available in your repo:
b. Install a specific version using the version string from the second column, for example, 5:18.09.1
Verify that Docker Engine is installed correctly by running the hello-world image.
This command downloads a test image and runs it in a container. When the container runs, it prints a message and exits.
Docker Engine is installed and running. The docker group is created but no users are added to it. You need to use sudo to run Docker commands. Continue to Linux postinstall to allow non-privileged users to run Docker commands and for other optional configuration steps.
Upgrade Docker Engine
Install from a package
Install Docker Engine, changing the path below to the path where you downloaded the Docker package.
The Docker daemon starts automatically.
Verify that Docker Engine is installed correctly by running the hello-world image.
This command downloads a test image and runs it in a container. When the container runs, it prints a message and exits.
Docker Engine is installed and running. The docker group is created but no users are added to it. You need to use sudo to run Docker commands. Continue to Post-installation steps for Linux to allow non-privileged users to run Docker commands and for other optional configuration steps.
Upgrade Docker Engine
To upgrade Docker Engine, download the newer package file and repeat the installation procedure, pointing to the new file.
Install using the convenience script
Docker provides a convenience script at get.docker.com to install Docker into development environments quickly and non-interactively. The convenience script is not recommended for production environments, but can be used as an example to create a provisioning script that is tailored to your needs. Also refer to the install using the repository steps to learn about installation steps to install using the package repository. The source code for the script is open source, and can be found in the docker-install repository on GitHub.
Always examine scripts downloaded from the internet before running them locally. Before installing, make yourself familiar with potential risks and limitations of the convenience script:
Tip: preview script steps before running
You can run the script with the DRY_RUN=1 option to learn what steps the script will execute during installation:
This example downloads the script from get.docker.com and runs it to install the latest stable release of Docker on Linux:
Docker is installed. The docker service starts automatically on Debian based distributions. On RPM based distributions, such as CentOS, Fedora, RHEL or SLES, you need to start it manually using the appropriate systemctl or service command. As the message indicates, non-root users cannot run Docker commands by default.
Use Docker as a non-privileged user, or install in rootless mode?
The installation script requires root or sudo privileges to install and use Docker. If you want to grant non-root users access to Docker, refer to the post-installation steps for Linux. Docker can also be installed without root privileges, or configured to run in rootless mode. For instructions on running Docker in rootless mode, refer to run the Docker daemon as a non-root user (rootless mode).
Install pre-releases
To install the latest version of Docker on Linux from the “test” channel, run:
Upgrade Docker after using the convenience script
If you installed Docker using the convenience script, you should upgrade Docker using your package manager directly. There is no advantage to re-running the convenience script, and it can cause issues if it attempts to re-add repositories which have already been added to the host machine.
Uninstall Docker Engine
Uninstall the Docker Engine, CLI, and Containerd packages:
Images, containers, volumes, or customized configuration files on your host are not automatically removed. To delete all images, containers, and volumes:
You must delete any edited configuration files manually.
Install Docker Engine
Estimated reading time: 7 minutes
Docker Desktop for Linux
Docker Desktop helps you build, share, and run containers easily on Mac and Windows as you do on Linux. Docker handles the complex setup and allows you to focus on writing the code. Thanks to the positive support we received on the subscription updates, we’ve started working on Docker Desktop for Linux which is the second-most popular feature request in our public roadmap. If you are interested in early access, sign up for our Developer Preview program.
Supported platforms
Docker Engine is available on a variety of Linux platforms, macOS and Windows 10 through Docker Desktop, and as a static binary installation. Find your preferred operating system below.
Desktop
Server
Platform | x86_64 / amd64 | arm64 / aarch64 | arm (32-bit) | s390x |
---|---|---|---|---|
CentOS | В | В | ||
Debian | В | |||
Fedora | В | В | ||
Raspbian | В | В | В | |
RHEL | В | В | В | |
SLES | В | В | В | |
Ubuntu | ||||
Binaries | В |
Other Linux distributions
While the instructions below may work, Docker does not test or verify installation on derivatives.
Docker provides binaries for manual installation of Docker Engine. These binaries are statically linked and can be used on any Linux distribution.
Release channels
Docker Engine has three types of update channels, stable, test, and nightly:
Stable
In preparation for a new year-month release, a branch is created from the master branch with format YY.mm when the milestones desired by Docker for the release have achieved feature-complete. Pre-releases such as betas and release candidates are conducted from their respective release branches. Patch releases and the corresponding pre-releases are performed from within the corresponding release branch.
Nightly
Nightly builds give you the latest builds of work in progress for the next major release. They are created once per day from the master branch with the version format:
These builds allow for testing from the latest code on the master branch. No qualifications or guarantees are made for the nightly builds.
Support
Docker Engine releases of a year-month branch are supported with patches as needed for one month after the next year-month general availability release.
This means bug reports and backports to release branches are assessed until the end-of-life date.
After the year-month branch has reached end-of-life, the branch may be deleted from the repository.
Backporting
Backports to the Docker products are prioritized by the Docker company. A Docker employee or repository maintainer will endeavour to ensure sensible bugfixes make it into active releases.
If there are important fixes that ought to be considered for backport to active release branches, be sure to highlight this in the PR description or by adding a comment to the PR.
Upgrade path
Patch releases are always backward compatible with its year-month version.
Licensing
Docker is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.
Reporting security issues
The Docker maintainers take security seriously. If you discover a security issue, please bring it to their attention right away!
Please DO NOT file a public issue; instead send your report privately to security@docker.com.
Security reports are greatly appreciated, and Docker will publicly thank you for it.
Get started
After setting up Docker, you can learn the basics with Getting started with Docker.
Установка и использование Docker Compose в Ubuntu 20.04
Published on July 16, 2020
Введение
Docker упрощает управление процессами приложений в контейнерах. Хотя контейнеры в некоторых отношениях аналогичны виртуальным машинам, они более компактные и более эффективно используют ресурсы. Это позволяет разработчикам разбить среду приложения на несколько изолированных служб.
Если приложение использует несколько служб, организация совместного запуска, взаимодействия и отключения всех контейнеров быстро станет неудобной. Docker Compose — инструмент, позволяющий запускать среды приложений с несколькими контейнерами на основе определений, задаваемых в файле YAML. Он использует определения служб для построения полностью настраиваемых сред с несколькими контейнерами, которые могут использовать общие сети и тома хранения данных.
В этом обучающем модуле мы покажем, как установить Docker Compose на сервере под управлением Ubuntu 20.04 и начать использовать этот инструмент.
Предварительные требования
Для его выполнения вам потребуется следующее:
Шаг 1 — Установка Docker Compose
Чтобы получить самую последнюю стабильную версию Docker Compose, мы загрузим это программное обеспечение из официального репозитория Github.
Затем необходимо задать правильные разрешения, чтобы сделать команду docker-compose исполняемой:
Чтобы проверить успешность установки, запустите следующую команду:
Вывод будет выглядеть следующим образом:
Установка Docker Compose успешно выполнена. В следующем разделе мы покажем, как настроить файл docker-compose.yml и запустить контейнерную среду с помощью этого инструмента.
Шаг 2 — Настройка файла docker-compose.yml
Чтобы продемонстрировать настройку файла docker-compose.yml и его работу с Docker Compose, мы создадим среду веб-сервера, используя официальный образ Nginx из Docker Hub, публичного реестра Docker. Контейнерная среда будет обслуживать один статичный файл HTML.
Для начала создайте новый каталог в домашнем каталоге и перейдите в него:
Настройте в этом каталоге папку приложения, которая будет выступать в качестве корневого каталога документов для вашей среды Nginx:
Создайте в предпочитаемом текстовом редакторе новый файл index.html в папке app :
Вставьте в файл следующее содержимое:
Затем создайте файл docker-compose.yml :
Вставьте в файл docker-compose.yml следующее содержимое:
Сохраните и закройте файл.
Мы настроили демонстрационную страницу и файл docker-compose.yml для создания контейнерной среды веб-сервера, которая будет обслуживать ее. На следующем шаге мы запустим эту среду с помощью Docker Compose.
Шаг 3 — Запуск Docker Compose
Docker Compose будет вначале искать заданный образ в локальной системе, и если не найдет его, загрузит его из Docker Hub. Вывод будет выглядеть следующим образом:
Теперь ваша среда запущена в фоновом режиме. Для проверки активности контейнера используйте следующую команду:
Эта команда покажет вам информацию о работающих контейнерах и их состоянии, а также о действующей переадресации портов:
Страница будет выглядеть следующим образом:
На следующем шаге вы увидите, как управлять контейнерной средой с помощью команд Docker Compose.
Шаг 4 — Знакомство с командами Docker Compose
Чтобы посмотреть журналы контейнера Nginx, используйте команду logs :
Вывод будет выглядеть следующим образом:
Если вы хотите приостановить работу среды без изменения текущего состояния ваших контейнеров, используйте команду:
Чтобы возобновить работу после приостановки, используйте команду:
Команда stop останавливает выполнение контейнера, но не уничтожает данные, связанные с вашими контейнерами:
Если вы хотите удалить контейнеры, сети и тома, связанные с контейнерной средой, используйте команду down :
Обратите внимание, что при этом не будет удален базовый образ, используемый Docker Compose для запуска нашей среды (в нашем примере nginx:alpine ). Так, при повторном запуске среды с помощью команды docker-compose up процесс будет намного быстрее, поскольку образ уже находится в вашей системе.
Если вы хотите удалить из системы базовый образ, используйте команду:
Примечание. Чтобы получить более подробное описание команд Docker, ознакомьтесь с нашим руководством по установке и использованию Docker.
Заключение
В этом обучающем модуле мы рассмотрели процедуры установки Docker Compose и настройки контейнерной среды на базе образа веб-сервера Nginx. Также мы увидели, как можно управлять этой средой с помощью команд Compose.
Полный справочник всех доступных команд docker-compose можно найти в официальной документации.
Установка Docker на Ubuntu
Docker не реализует собственную систему контейнеров, он использует LXC и выступает в качестве оболочки, которая позволяет автоматически загружать, устанавливать и запускать образы контейнеров, а также управлять ими. Все действия выполняются в несколько команд и намного проще чем при использовании lxc. В этой статье мы рассмотрим как выполняется установка docker на Ubuntu, а также как использовать контейнеры в Linux.
Системные требования
Для работы docker ваша система должна отвечать таким требованиям:
Если вы используете Ubuntu версии выше 16.04, то проблем с ядром не возникнет, так как эта система поставляется с ядром 4.2 по умолчанию.
Установка Docker в Ubuntu
Перед тем как переходить к установке самой программы, нужно обновить систему до актуального состояния. Для этого выполните:
sudo apt update && sudo apt upgrade
Перед тем как установить Docker Ubuntu необходимо установить дополнительные пакеты ядра, которые позволяют использовать Aufs для контейнеров Docker. С помощью этой файловой системы мы сможем следить за изменениями и делать мгновенные снимки контейнеров:
Ещё надо установить пакеты, необходимые для работы apt по https:
sudo apt install apt-transport-https ca-certificates curl software-properties-common
После того как все приготовления завершены и вы убедились что ваша система полностью готова, можно перейти к установке. Мы будем устанавливать программу из официального репозитория разработчиков. Сначала надо добавить ключ репозитория:
Затем добавьте репозиторий docker в систему:
sudo add-apt-repository «deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable»
sudo apt update && apt-cache policy docker-ce
И установка Docker на Ubuntu:
Чтобы завершить установку осталось добавить нашего пользователя в группу docker. Иначе при запуске утилиты вы будете получать ошибку подключения к сокету:
Для добавления выполните:
Затем проверяем запущен ли сервис:
sudo systemctl status docker
Все готово к работе. Теперь рассмотрим подробнее использование Docker.
Установка Docker Compose
Сейчас работа с docker не обходится без утилиты управления контейнерами docker compose, давайте её тоже установим. Чтобы установить docker compose Ubuntu выполните последовательность команд:
sudo chmod +x /usr/local/bin/docker-compose
Утилита была загружена из официального сайта и теперь вы можете посмотреть её версию:
Утилита Docker
Все действия с контейнерами выполняются утилитой docker. Ее можно запускать от имени вашего пользователя после того, как он был добавлен в группу программы. Синтаксис утилиты очень прост:
$ docker опции команда опции_команды аргументы
Давайте сначала рассмотрим основные опции утилиты их всего несколько:
Команд намного больше, ниже приведены все команды, которые вы можете использовать в своих программах:
В этой статье мы будем часто использовать команду run, рассмотрим ее опции:
Теперь, когда мы рассмотрели все основы, приведем несколько примеров работы с контейнерами. Это очень просто.
Использование Docker в Ubuntu
Чтобы убедиться что все работает давайте запустим тестовый образ. Для этого наберите:
docker run hello-world
Больше ничего не нужно, программа сама скачает образ, и выполнит оболочку в нем. Вы увидите сообщение Hello from Docker:
Поиск и установка контейнеров
Использование docker очень простое по своей сути. Если вы не знаете название нужного пакета, можете воспользоваться поиском, например, найдем Ubuntu:
docker search ubuntu
Для загрузки образа на локальный компьютер используйте команду pull:
docker pull ubuntu
После завершения загрузки вы можете посмотреть список установленных образов:
Запуск контейнера
Вы в окружении контейнера. У вас есть права суперпользователя, но вы не можете получить доступ к основной системе. Контейнер содержит минимум необходимых файлов, нет даже текстовых редакторов. Для установки чего-либо сначала нужно обновить репозиторий:
Например, установим утилиту dialog:
Сохранение изменений
Вы можете изменять контейнер как захотите, добавлять и удалять программы и многое другое. Но когда вы его удалите, все изменения будут потеряны. Вы можете создать новое образ из модифицированного контейнера, для этого используется команда commit. Сначала смотрим список запущенных контейнеров:
Отсюда возьмите id контейнера, затем выполните такую команду для создания нового образа:
Новый образ был сохранен на вашем компьютере и вы можете увидеть его в списке образов:
Список контейнеров
Как я уже говорил, вы можете посмотреть список запущенных контейнеров с помощью команды ps:
Чтобы вывести последний созданный контейнер, используйте:
Управление контейнерами
Чтобы остановить запущенный контейнер используйте команду stop:
docker stop d034b794a3bf
docker start d034b794a3bf
Вы можете подключиться к запущенному контейнеру с помощью attach:
docker attach d034b794a3bf
Чтобы удалить контейнер со всеми изменениями выполните:
docker rm d034b794a3bf
Выводы
Вы этой статье мы рассмотрели как выполняется установка Docker Ubuntu. В этом дистрибутиве процесс установки не будет трудным даже для новичков. А возможность установки различных дистрибутивов в несколько команд может быть полезной во многих ситуациях. А вы пользуетесь Docker? Для решения каких задач? Напишите в комментариях!