Установка docker в debian 9: Установка и использование Docker в Debian 9
Содержание
Установка и использование Docker в Debian 9
Предыдущая версия данного обучающего руководства была написана finid.
Введение
Docker — это приложение, упрощающее процесс управления процессами приложения в контейнерах. Контейнеры позволяют запускать приложения в процессах с изолированными ресурсами. Они похожи на виртуальные машины, но более портативные, более эффективно расходуют ресурсы и в большей степени зависят от операционной системы хоста.
Подробное описание различных компонентов контейнера Docker см. в статье Экосистема Docker: знакомство с базовыми компонентами.
Это руководство поможет установить и использовать Docker Community Edition (CE) в Debian 9. Вы самостоятельно установите Docker, поработаете с контейнерами и изображениями, а также подготовите образ репозитория Docker.
Предварительные требования
Для выполнения этого руководства вам потребуется следующее:
Шаг 1 — Установка Docker
Пакет установки Docker, доступный в официальном репозитории Debian, может представлять собой не самую последнюю версию. Чтобы точно использовать самую актуальную версию, мы будем устанавливать Docker из официального репозитория Docker. Для этого мы добавим новый источник пакета, ключ GPG от Docker, чтобы гарантировать загрузку рабочих файлов, а затем установим пакет.
Первым делом обновите существующий список пакетов:
Затем установите несколько необходимых пакетов, которые позволяют apt
использовать пакеты через HTTPS:
- sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
Добавьте ключ GPG для официального репозитория Docker в вашу систему:
- curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
Добавьте репозиторий Docker в источники APT:
- sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
Потом обновите базу данных пакетов и добавьте в нее пакеты Docker из недавно добавленного репозитория:
Убедитесь, что установка будет выполняться из репозитория Docker, а не из репозитория Debian по умолчанию:
- apt-cache policy docker-ce
Вы должны получить следующий вывод, хотя номер версии Docker может отличаться:
Output of apt-cache policy docker-ce
docker-ce:
Installed: (none)
Candidate: 18.06.1~ce~3-0~debian
Version table:
18.06.1~ce~3-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
Обратите внимание, что docker-ce
не установлен, но является кандидатом на установку из репозитория Docker для Debian 9 (версия Stretch
).
Установите Docker:
- sudo apt install docker-ce
Docker должен быть установлен, демон-процесс запущен, а для процесса активирован запуск при загрузке. Проверьте, что он запущен:
- sudo systemctl status docker
Вывод должен выглядеть примерно следующим образом, указывая, что служба активна и запущена:
Output
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-07-05 15:08:39 UTC; 2min 55s ago
Docs: https://docs.docker.com
Main PID: 21319 (dockerd)
CGroup: /system.slice/docker.service
├─21319 /usr/bin/dockerd -H fd://
└─21326 docker-containerd --config /var/run/docker/containerd/containerd.toml
После установки Docker у вас будет доступ не только к службе Docker (демон-процесс), но и к утилите командной строки docker
или клиенту Docker. Мы узнаем, как использовать команду docker
позже в этом обучающем руководстве.
Шаг 2 — Настройка команды Docker без sudo (необязательно)
По умолчанию команда docker
может быть запущена только пользователем root или пользователем из группы docker, которая автоматически создается при установке Docker. Если вы попытаетесь запустить команду docker
без префикса sudo
или с помощью пользователя, который не находится в группе docker, то получите следующий вывод:
Output
docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See 'docker run --help'.
Если вы не хотите каждый раз вводить sudo
при запуске команды docker
, добавьте свое имя пользователя в группу docker
:
- sudo usermod -aG docker ${USER}
Чтобы применить добавление нового члена группы, выйдите и войдите на сервер или введите следующее:
Вы должны будете ввести пароль вашего пользователя, чтобы продолжить.
Проверьте, что ваш пользователь добавлен в группу docker, введя следующее:
Output
sammy sudo docker
Если вам нужно добавить пользователя в группу docker
, для которой вы не выполнили вход, объявите имя пользователя явно, используя следующую команду:
- sudo usermod -aG docker username
В дальнейшем в статье подразумевается, что вы запускаете команду docker
от имени пользователя в группе docker. В обратном случае вам необходимо добавлять к командам префикс sudo
.
Давайте перейдем к знакомству с командой docker
.
Шаг 3 — Использование команды Docker
Использование docker
подразумевает передачу ему цепочки опций и команд, за которыми следуют аргументы. Синтаксис имеет следующую форму:
- docker [option] [command] [arguments]
Чтобы просмотреть все доступные субкоманды, введите:
Для 18-й версии Docker полный список субкоманд выглядит следующим образом:
Output
attach Attach local standard input, output, and error streams to a running container
build Build an image from a Dockerfile
commit Create a new image from a container's changes
cp Copy files/folders between a container and the local filesystem
create Create a new container
diff Inspect changes to files or directories on a container's filesystem
events Get real time events from the server
exec Run a command in a running container
export Export a container's filesystem as a tar archive
history Show the history of an image
images List images
import Import the contents from a tarball to create a filesystem image
info Display system-wide information
inspect Return low-level information on Docker objects
kill Kill one or more running containers
load Load an image from a tar archive or STDIN
login Log in to a Docker registry
logout Log out from a Docker registry
logs Fetch the logs of a container
pause Pause all processes within one or more containers
port List port mappings or a specific mapping for the container
ps List containers
pull Pull an image or a repository from a registry
push Push an image or a repository to a registry
rename Rename a container
restart Restart one or more containers
rm Remove one or more containers
rmi Remove one or more images
run Run a command in a new container
save Save one or more images to a tar archive (streamed to STDOUT by default)
search Search the Docker Hub for images
start Start one or more stopped containers
stats Display a live stream of container(s) resource usage statistics
stop Stop one or more running containers
tag Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
top Display the running processes of a container
unpause Unpause all processes within one or more containers
update Update configuration of one or more containers
version Show the Docker version information
wait Block until one or more containers stop, then print their exit codes
Чтобы просмотреть параметры, доступные для конкретной команды, введите:
- docker docker-subcommand --help
Чтобы просмотреть общесистемную информацию о Docker, введите следующее:
Давайте изучим некоторые из этих команд. Сейчас мы начнем работать с образами.
Шаг 4 — Работа с образами Docker
Контейнеры Docker получают из образов Docker. По умолчанию Docker загружает эти образы из Docker Hub, реестр Docker, контролируемые Docker, т.е. компанией, реализующей проект Docker. Любой может размещать свои образы Docker на Docker Hun, поэтому большинство приложений и дистрибутивов Linux, которые вам потребуется, хранят там свои образы.
Чтобы проверить, можно ли получить доступ к образам из Docker Hub и загрузить их, введите следующую команду:
Данный вывод говорит о том, что Docker работает корректно:
Output
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
9db2ca6ccae0: Pull complete
Digest: sha256:4b8ff392a12ed9ea17784bd3c9a8b1fa3299cac44aca35a85c90c5e3c7afacdc
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
Docker первоначально не смог найти локальный образ hello-world
, поэтому он загрузил образ из Docker Hub, который является репозиторием по умолчанию. После того как образ был загружен, Docker создал контейнер из образа, а приложение внутри контейнера было исполнено, отобразив сообщение.
Вы можете выполнять поиск доступных на Docker Hub с помощью команды docker
с субкомандой search
. Например, чтобы найти образ Ubuntu, введите:
Скрипт пробежится по Docker Hub и вернет список всех образов с именами, совпадающими со строкой запроса. В данном случае вывод будет выглядеть примерно следующим образом:
Output
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
ubuntu Ubuntu is a Debian-based Linux operating sys… 8320 [OK]
dorowu/ubuntu-desktop-lxde-vnc Ubuntu with openssh-server and NoVNC 214 [OK]
rastasheep/ubuntu-sshd Dockerized SSH service, built on top of offi… 170 [OK]
consol/ubuntu-xfce-vnc Ubuntu container with "headless" VNC session… 128 [OK]
ansible/ubuntu14.04-ansible Ubuntu 14.04 LTS with ansible 95 [OK]
ubuntu-upstart Upstart is an event-based replacement for th… 88 [OK]
neurodebian NeuroDebian provides neuroscience research s… 53 [OK]
1and1internet/ubuntu-16-nginx-php-phpmyadmin-mysql-5 ubuntu-16-nginx-php-phpmyadmin-mysql-5 43 [OK]
ubuntu-debootstrap debootstrap --variant=minbase --components=m… 39 [OK]
nuagebec/ubuntu Simple always updated Ubuntu docker images w… 23 [OK]
tutum/ubuntu Simple Ubuntu docker images with SSH access 18
i386/ubuntu Ubuntu is a Debian-based Linux operating sys… 13
1and1internet/ubuntu-16-apache-php-7.0 ubuntu-16-apache-php-7.0 12 [OK]
ppc64le/ubuntu Ubuntu is a Debian-based Linux operating sys… 12
eclipse/ubuntu_jdk8 Ubuntu, JDK8, Maven 3, git, curl, nmap, mc, … 6 [OK]
darksheer/ubuntu Base Ubuntu Image -- Updated hourly 4 [OK]
codenvy/ubuntu_jdk8 Ubuntu, JDK8, Maven 3, git, curl, nmap, mc, … 4 [OK]
1and1internet/ubuntu-16-nginx-php-5.6-wordpress-4 ubuntu-16-nginx-php-5.6-wordpress-4 3 [OK]
pivotaldata/ubuntu A quick freshening-up of the base Ubuntu doc… 2
1and1internet/ubuntu-16-sshd ubuntu-16-sshd 1 [OK]
ossobv/ubuntu Custom ubuntu image from scratch (based on o… 0
smartentry/ubuntu ubuntu with smartentry 0 [OK]
1and1internet/ubuntu-16-healthcheck ubuntu-16-healthcheck 0 [OK]
pivotaldata/ubuntu-gpdb-dev Ubuntu images for GPDB development 0
paasmule/bosh-tools-ubuntu Ubuntu based bosh-cli 0 [OK]
...
В столбце OFFICIAL OK указывает на образ, созданный и поддерживаемый компанией, реализующей проект. После того как вы определили образ, который хотели бы использовать, вы можете загрузить его на свой компьютер с помощью субкоманды pull
.
Запустите следующую команду, чтобы загрузить официальный образ ubuntu
на свой компьютер:
Вывод должен выглядеть следующим образом:
Output
Using default tag: latest
latest: Pulling from library/ubuntu
6b98dfc16071: Pull complete
4001a1209541: Pull complete
6319fc68c576: Pull complete
b24603670dc3: Pull complete
97f170c87c6f: Pull complete
Digest: sha256:5f4bdc3467537cbbe563e80db2c3ec95d548a9145d64453b06939c4592d67b6d
Status: Downloaded newer image for ubuntu:latest
После того как образ будет загружен, вы сможете запустить контейнер с помощью загруженного образа с помощью субкоманды run
. Как вы уже видели на примере hello-world
, если образ не был загружен, когда docker
выполняется с субкомандой run
, клиент Docker сначала загружает образ, а затем запускает контейнер с этим образом.
Чтобы просмотреть образы, которые были загружены на ваш компьютер, введите:
Вывод должен выглядеть примерно следующим образом:
Output
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest 16508e5c265d 13 days ago 84.1MB
hello-world latest 2cb0d9787c4d 7 weeks ago 1.85kB
Как вы увидите далее в этом обучающем руководстве, образы, которые вы используете для запуска контейнеров, можно изменить и использовать для создания новых образов, которые затем могут быть загружены (помещены) на Docker Hub или другие реестры Docker.
Давайте более подробно рассмотрим, как запускаются контейнеры.
Шаг 5 — Запуск контейнеров Docker
Контейнер hello-world
, который вы запустили на предыдущем шаге, служит примером контейнера, который запускается и завершает работу после отправки тестового сообщения. Контейнеры могут быть гораздо более полезными, чем в примере выше, а также могут быть интерактивными. В конечном счете, они очень похожи на виртуальные машины, но более бережно расходуют ресурсы.
В качестве примера мы запустим контейнер с самым последним образом образ Ubuntu. Сочетание переключателей -i и -t предоставляет вам доступ к интерактивной командной оболочке внутри контейнера:
Необходимо изменить приглашение к вводу команды, чтобы отразить тот факт, что вы работаете внутри контейнера, и должны иметь следующую форму:
Output
root@d9b100f2f636:/#
Обратите внимание на идентификатор контейнер в запросе команды. В данном примере это d9b100f2f636
. Вам потребуется этот идентификатор для определения контейнера, когда вы захотите его удалить.
Теперь вы можете запустить любую команду внутри контейнера. Например, сейчас мы обновим базу данных пакетов внутри контейнера. Вам не потребуется начинать любую команду с sudo
, потому что вы работаете внутри контейнера как root-пользователь:
После этого вы можете установите любое приложение внутри контейнера. Давайте установим Node.js:
Эта команда устанавливает Node.js внутри контейнера из официального репозитория Ubuntu. После завершения установки проверьте, что Node.js был установлен успешно:
Вы увидите номер версии, отображаемый в терминале:
Output
v8.10.0
Любые изменения, которые вы вносите внутри контейнера, применяются только к контейнеру.
Чтобы выйти из контейнера, введите exit
.
Далее мы рассмотрим управление контейнерами в нашей системе.
Шаг 6 — Управление контейнерами Docker
После использования Docker в течение определенного времени, у вас будет много активных (запущенных) и неактивных контейнеров на компьютере. Чтобы просмотреть активные, используйте следующую команду:
Вывод будет выглядеть примерно следующим образом:
Output
CONTAINER ID IMAGE COMMAND CREATED
В этом обучающем руководстве вы запустили два контейнера: один из образа hello-world
и другой из образа ubuntu
. Оба контейнера больше не запущены, но все еще существует в вашей системе.
Чтобы просмотреть все контейнеры — активные и неактивные, воспользуйтесь командой docker ps
с переключателем -a
:
Вывод будет выглядеть следующим образом:
d9b100f2f636 ubuntu "/bin/bash" About an hour ago Exited (0) 8 minutes ago sharp_volhard
01c950718166 hello-world "/hello" About an hour ago Exited (0) About an hour ago festive_williams
Чтобы просмотреть последний созданный вами контейнер, передайте переключатель -l
:
- CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
- d9b100f2f636 ubuntu "/bin/bash" About an hour ago Exited (0) 10 minutes ago sharp_volhard
Чтобы запустить остановленный контейнер, воспользуйтесь docker start
с идентификатором контейнера или именем контейнера. Давайте запустим контейнер на базе Ubuntu с идентификатором d9b100f2f636
:
- docker start d9b100f2f636
Контейнер будет запущен, а вы сможете использовать docker ps
, чтобы просматривать его статус:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d9b100f2f636 ubuntu "/bin/bash" About an hour ago Up 8 seconds sharp_volhard
Чтобы остановить запущенный контейнер, используйте docker stop
с идентификатором или именем контейнера. На этот раз мы будем использовать имя, которое Docker привязал к контейнеру, т.е. sharp_volhard
:
- docker stop sharp_volhard
После того как вы решили, что вам больше не потребуется контейнер, удалите его с помощью команды docker rm
, снова добавив идентификатор контейнера или его имя. Используйте команду docker ps -a
, чтобы найти идентификатор или имя контейнера, связанного с образом hello-world
, и удалить его.
- docker rm festive_williams
Вы можете запустить новый контейнер и присвоить ему имя с помощью переключателя --name
. Вы также можете использовать переключатель --rm
, чтобы создать контейнер, который удаляется после остановки. Изучите команду docker run help
, чтобы получить больше информации об этих и прочих опциях.
Контейнеры можно превратить в образы, которые вы можете использовать для создания новых контейнеров. Давайте посмотрим, как это работает.
Шаг 7 — Внесение изменений в контейнер для образа Docker
После запуска образа Docker вы можете создавать, изменять и удалять файлы так же, как и с помощью виртуальной машины. Эти изменения будут применяться только к данному контейнеру. Вы можете запускать и останавливать его, но после того как вы уничтожите его с помощью команды docker rm
, изменения будут утрачены навсегда.
Данный раздел показывает, как сохранить состояние контейнера в виде нового образа Docker.
После установки Node.js внутри контейнера Ubuntu у вас появился контейнер, запускающий образ, но этот контейнер отличается от образа, который вы использовали для его создания. Но позже вам может снова потребоваться этот контейнер Node.js в качестве основы для новых образов.
Затем внесите изменения в новый экземпляр образа Docker с помощью следующей команды.
- docker commit -m "What you did to the image" -a "Author Name" container_id repository/new_image_name
Переключатель -m используется в качестве сообщения о внесении изменений, которое помогает вам и остальным узнать, какие изменения вы внесли, в то время как -a используется для указания автора. container_id
— это тот самый идентификатор, который вы отмечали ранее в этом руководстве, когда запускали интерактивную сессию Docker. Если вы не создавали дополнительные репозитории на Docker Hub, repository
, как правило, является вашим именем пользователя на Docker Hub.
Например, для пользователя sammy с идентификатором контейнера d9b100f2f2f6
команда будет выглядеть следующим образом:
- docker commit -m "added Node.js" -a "sammy" d9b100f2f636 sammy/ubuntu-nodejs
Когда вы вносите образ, новый образ сохраняется локально на компьютере. Позже в этом обучающем руководстве вы узнаете, как добавить образ в реестр Docker, например, на Docker Hub, чтобы другие могли получить к нему доступ.
Список образов Docker теперь будет содержать новый образ, а также старый образ, из которого он будет получен:
Вывод будет выглядеть следующим образом:
Output
REPOSITORY TAG IMAGE ID CREATED SIZE
sammy/ubuntu-nodejs latest 7c1f35226ca6 7 seconds ago 179MB
ubuntu latest 113a43faa138 4 weeks ago 81.2MB
hello-world latest e38bc07ac18e 2 months ago 1.85kB
В данном примере ubuntu-nodejs
является новым образом, который был получен из образа ubuntu
на Docker Hub. Разница в размере отражает внесенные изменения. В данном примере изменение состояло в том, что NodeJS был установлен. В следующий раз, когда вам потребуется запустить контейнер, использующий Ubuntu с предустановленным NodeJS, вы сможете использовать новый образ.
Вы также можете создавать образы из Dockerfile
, что позволяет автоматизировать установку программного обеспечения в новом образе. Однако это не относится к предмету данного обучающего руководства.
Теперь мы поделимся новым образом с другими, чтобы они могли создавать из него контейнеры.
Шаг 8 — Загрузка образов Docker в репозиторий Docker
Следующим логическим шагом после создания нового образа из существующего является предоставление доступа к этому образу нескольким вашим друзьям или всему миру на Docker Hub или в другом реестре Docker, к которому вы имели доступ. Чтобы добавить образ на Docker Hub или любой другой реестр Docker, у вас должна быть там учетная запись.
Данный раздел посвящен добавлению образа Docker на Docker Hub. Чтобы узнать, как создать свой собственный частный реестр Docker, ознакомьтесь со статьей Настройка частного реестра Docker на Ubuntu 14.04.
Чтобы загрузить свой образ, выполните вход в Docker Hub.
- docker login -u docker-registry-username
Вам будет предложено использовать для аутентификации пароль Docker Hub. Если вы указали правильный пароль, аутентификации должна быть выполнена успешно.
Примечание. Если ваше имя пользователя в реестре Docker отличается от локального имени пользователя, которое вы использовали при создании образа, вам потребуется пометить ваш образ именем пользователя в реестре. Для примера, приведенного на последнем шаге, вам необходимо ввести следующую команду:
- docker tag sammy/ubuntu-nodejs docker-registry-username/ubuntu-nodejs
Затем вы можете загрузить свой образ с помощью следующей команды:
- docker push docker-registry-username/docker-image-name
Чтобы загрузить образ ubuntu-nodejs
в репозиторий sammy, необходимо использовать следующую команду:
- docker push sammy/ubuntu-nodejs
Данный процесс может занять некоторое время, необходимое на загрузку образов, но после завершения вывод будет выглядеть следующим образом:
Output
The push refers to a repository [docker.io/sammy/ubuntu-nodejs]
e3fbbfb44187: Pushed
5f70bf18a086: Pushed
a3b5c80a4eba: Pushed
7f18b442972b: Pushed
3ce512daaf78: Pushed
7aae4540b42d: Pushed
...
После добавления образа в реестр он должен отображаться в панели вашей учетной записи, как на изображении ниже.
Если при попытке добавления возникает подобная ошибка, вы, скорее всего, не выполнили вход:
Output
The push refers to a repository [docker.io/sammy/ubuntu-nodejs]
e3fbbfb44187: Preparing
5f70bf18a086: Preparing
a3b5c80a4eba: Preparing
7f18b442972b: Preparing
3ce512daaf78: Preparing
7aae4540b42d: Waiting
unauthorized: authentication required
Выполните вход с помощью команды docker login
и повторите попытку загрузки. Проверьте, появился ли образ на вашей странице репозитория Docker Hub.
Теперь вы можете использовать docker pull sammy/ubuntu-nodejs
, чтобы загрузить образ на новый компьютер и использовать его для запуска нового контейнера.
Заключение
В этом обучающем руководстве вы установили Docker, поработали с образами и контейнерами, а также добавили измененный образ на Docker Hub. После знакомства с основами, вы можете переходить к другим обучающим руководствам Docker в сообществе.
Установка Docker на Debian
Убедитесь в наличии
необходимых компонентов, после чего можно приступать к
установке Docker.
Необходимые компоненты
Требования к OS
Для установки Docker вам нужна 64 битная версия Debian или Raspbian:
- Buster 10
- Stretch 9 (stable) / Raspbian Stretch
Docker поддерживается на x86_64
(или amd64
), armhf
и arm64
архитектурах.
Удаление старых версий
Старые версии Docker могут называться docker
, docker.io
или docker-engine
.
Если они у вас есть, удалите их:
bash
$ sudo apt-get remove docker docker-engine docker.io containerd runc
Все в порядке если apt-get
сообщит что ни один из этих пакетов не установлен.
Содержимое папки /var/lib/docker/
, включая образы, контейнеры, тома и
сети сохраняется. Docker Engine — Community теперь называется docker-ce
.
Установка Docker
Вы можете установить Docker разными способами, в зависимости от ваши потребностей:
Большинство пользователей предпочитает производить установку из репозитория Docker.
Этот метот рекомендуется для всех случаев исключая использование Rspbian.Некоторые пользователи предпочитают скачать DEB пакет и
установить его вручную. Это бывает полезно при использовании Docker в изолированных системах без доступа в интернет.При тестировании и в среде разработки, некоторые пользователи предпочитают
автоматизированные сценарии для установки Docker.
В настоящий момент это единственное решение для использования на Raspbian.
Установка из репозитория
Перед установкой установкой Docker на новом хосте, в первую очередь вам необходимо подключить Docker репозиторий.
После чего вы сможете произвести установку или обновление Docker.
Пользователи Raspbian не могут использовать этот метод!
Установка из репозитория на Raspbian пока не поддерживается.
Вам следует использовать вспомогательные сценарии.
Подключение репозитория
Обновите индекс пакетов в
apt
:bash
$ sudo apt-get updateУстановите пакеты
apt
позволяющие использовать репозиторий через HTTPS:bash
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg2 \
software-properties-commonДобавьте официальный GPG ключ для Docker:
bash
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -Проверяем что теперь в системе есть ключ с цифровым отпечатком
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
, его можно найти по последним 8 символам отпечатка.bash
$ sudo apt-key fingerprint 0EBFCD88
pub 4096R/0EBFCD88 2017-02-22
Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb) <[email protected]>
sub 4096R/F273FCD8 2017-02-22Используйте следующую команду для установки из табильной версии репозитория. Для добавления
nightly или test веток репозитория добавьте словаnightly
илиtest
(или оба)
после словаstable
в следующую команду. Узать о nightly и test ветках.Примечание: подкоманда
lsb_release -cs
возвращает имя дистрибутива
Debian, напримерhelium
. Иногда, в таких дистрибутивах
как BunsenLabs Linux, вам может понадобиться сменить$(lsb_release -cs)
на ваш родительский дистрибутив Debian. Например, если вы используете
BunsenLabs Linux Helium
, вы можете указатьstretch
. Docker не гарантирует работу
непроверенных и неподдерживаемых дистрибутивов Debian.bash
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/debian \
$(lsb_release -cs) \
stable"bash
$ sudo add-apt-repository \
"deb [arch=armhf] https://download.docker.com/linux/debian \
$(lsb_release -cs) \
stable"bash
$ sudo add-apt-repository \
"deb [arch=arm64] https://download.docker.com/linux/debian \
$(lsb_release -cs) \
stable"
Установка пакета Docker Engine — Community
Примечание: Данная операция пожжерживается на Debian
x86_64
/amd64
, Debian ARM,
или Raspbian.
Обновляем идекс пакетов в
apt
.bash
$ sudo apt-get updateУстанавлиеваем последнюю версию Docker Engine — Community and containerd,
или переходим на следующий шаг с установкой вручную выбираемой версии:bash
$ sudo apt-get install docker-ce docker-ce-cli containerd.ioУ вас несколько репозиториев Docker?
Если у вас активно несколько репозиториев Docker, производя установку
или обновление без указания версии в командахapt-get install
или
apt-get update
всегда устанавливается новейшая версия из возможных,
что может не соответствовать вашим требованиям стабильности.Для установки определенной версии of Docker Engine — Community, выберите доступную версию в репозитории,
а затем произведите установку:a. Отображение списка версий доступных в репозитории:
bash
$ apt-cache madison docker-ce
docker-ce | 5:18.09.1~3-0~debian-stretch | https://download.docker.com/linux/debian stretch/stable amd64 Packages
docker-ce | 5:18.09.0~3-0~debian-stretch | https://download.docker.com/linux/debian stretch/stable amd64 Packages
docker-ce | 18.06.1~ce~3-0~debian | https://download.docker.com/linux/debian stretch/stable amd64 Packages
docker-ce | 18.06.0~ce~3-0~debian | https://download.docker.com/linux/debian stretch/stable amd64 Packages
...b. Установка выбраной версии, например:
5:18.09.1~3-0~debian-stretch
.bash
$ sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.ioПроверка успешной установки Docker Engine — Community с помощью запуска образа
hello-world
.bash
$ sudo docker run hello-worldЭта команда скачивает тестовый образ и запускает его в контейнере. Когда контейнер запущен, он выводит в консоль информационное сообщение и завершается.
Docker установлен и запущен. Так же будет создана группа docker
без добавления пользователей.
Вам нужно использовать sudo
для выполнения команд Docker.
Continue to Linux postinstall to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
Обновление Docker
Для обновления Docker, сперва вам необходимо выполнить команду sudo apt-get update
, а затем следовать
инструкциям по установке, выбрав необходимую вам версию.
Установка из пакета
Если вы не можете использовать репозиторий для установки Docker, вы можете скачать
.deb
файл вашего релиза и установить его вручную. Вам придется скачивать новый файл каждый раз когда вы захотите
обновить Docker.
Откройте ссылку
https://download.docker.com/linux/debian/dists/
,
выберети вашу версию Debian, откройтеpool/stable/
, выберитеamd64
,
armhf
илиarm64
и скачайте.deb
файл нужной вам версии Docker Engine.Примечание: Для установки пакета nightly, измените слово
stable
в url наnightly
.
Узнать больше о ветках nightly и test.Для установки Docker, измените путь на тот куда был скачан файл с пакетом Docker и выполните команду.
bash
$ sudo dpkg -i package.debДемон Docker будет запущен автоматически.
Убедимся что установка Docker прошла успешно, для этого запустим образ
hello-world
.bash
$ sudo docker run hello-worldThis command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker установлен и запущен. Группа docker
была создана без добавления в нее пользователей.
Для выполнения команд Docker вам следует использовать sudo
.
Ознакомтесь с шагами после установки на Linux
что бы разрешить не привелигированый доступ к командам Docker или что бы узнать о других настройках.
Обновление Docker
Для обновления Docker, скачайте пакет с новой версией и следуйте
процедуре установки.
Удаление Docker
Для удаления Docker выполните следующую команду:
bash
$ sudo apt-get purge docker-ceОбразы, контейнеры и тома или конфигурационные файлы на вашем хосте не удаляются автоматически.
Для того что бы удалить их выполните команду:bash
$ sudo rm -rf /var/lib/docker
Конфигурационные файлы удаляются вручную.
Комментарии:
Комментариев нет, желаете стать первым?
Как установить Docker на Debian 9 Stretch
В этой статье мы покажем вам, как установить Docker на сервере Debian 9 Stretch. Для тех из вас, кто не знает, Docker является проектом с открытым исходным кодом, который автоматизирует развертывание приложения внутри контейнера программного обеспечения. Контейнер позволяет разработчику упаковать все ресурсы проекта, такие как библиотеки, зависимости, активы и т.д. Docker написана на языке программирования Go и разработанная Dotcloud. Это в основном двигатель контейнера, который использует возможности ядра Linux как пространства имен и контрольных групп для создания контейнеров в операционной системе и позволяет автоматизировать развертывание приложений на контейнере.
В данной статье предполагается, что вы по крайней мере, имеете базовые знания Linux, знаете, как использовать оболочку, и, самое главное, вы размещаете свой сайт на своем собственном VPS. Установка очень проста и предполагает, что вы работаете в корневой учетной записи, если вы не можете добавить «Sudo» к командам, чтобы получить привилегии суперпользователя. Мы покажем вам шаг за шагом установку последней версии Docker на сервере Debian 9 (Stretch).
Установка Docker на Debian 9 Stretch
Шаг 1. Обновление системы.
Перед тем, как установить любое программное обеспечение, важно, убедиться, что система находится в актуальном состоянии, выполнив эти следующие команды в терминале:
apt-get update apt-get upgrade
Шаг 2. Установка Docker на сервер Debian 9.
Во-первых, установите некоторые дополнительные пакеты перед установкой Docker:
apt-get install apt-transport-https ca-certificates curl software-properties-common
Добавьте ключ GPG для хранилища Docker на вашей системе:
wget https://download.docker.com/linux/debian/gpg sudo apt-key add gpg
Затем добавьте репозиторий Docker к вашей машине Debian Stretch с помощью следующей команды:
echo "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee -a /etc/apt/sources.list.d/docker.list
Обновите базу данных и установите Docker:
apt-get install docker-ce
Как только это будет сделано, запустите и включите Docker для запуска при загрузке:
systemctl start docker systemctl enable docker
Проверьте правильности установки Docker:
### docker --version Docker version 1.11.0, build 4dc599
Шаг 3. Развертывание первого изображения Docker, «Hello World!».
Для того, чтобы быть уверенными, что мы успешно установили Docker, мы можем запустить классическое изображение “hello-world”:
docker run hello-world
Если вы видите это сообщение, то он работает правильно:
Hello from Docker. This message shows that your installation appears to be working correctly.
Поздравления! Вы успешно установили Docker. Спасибо за использование этой статьи для установки Docker на сервер Debian 9 Stretch. Для получения дополнительной помощи или полезной информации, мы рекомендуем вам зайти на официальный веб-сайт Docker.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Ubuntu, Centos 7 и Debian 9 🐟
Содержание:
Основные понятия
- Docker — приложение для виртуальной контейнеризации.
- Контейнер — виртуальная среда, где разворачивается и запускается сохраненный заранее образ с отдельным ПО.
- Образ (шаблон) — полностью работоспособный исполняемый пакет определенного ПО для запуска в контейнере Docker.
- Dockerfile — файл инструкций для демона (сервера) Docker под соответствующий образ. Для нового образа, сначала готовится dockerfile после чего сам пакет образа.
- Docker-ce — бесплатная ce-версия (ce — community edition) платформы. По умолчанию распространяется платная ee-версия (ee — enterprise edition) с пробным периодом.
Подробнее с экосистемой Docker можно ознакомиться в отдельной статье нашего блога.
Условия для запуска Docker на VPS-сервере с Linux
- Подготовленный сервер Linux с операционной системой Centos 7, Debian 9 или Ubuntu 19 и первоначальной настройкой. Также необходим установленный файервол и под управлением sudo-администратора (не root).
- Профиль в официальном репозитории Docker HUB.
Подробнее о том, как работать с контейнером Docker можно прочитать в этой статье.
Процессы установки и работы с докер-системой в Debian и Ubuntu фактически одинаковы — меняются только наименования версий ОС. Поэтому, сначала будет рассмотрена общая установка для этих версий, а потом — отдельная инструкция по Centos.
Установка Docker на Ubuntu и Debian
Развернуть окружение Docker на виртуальном сервере с Debian или Ubuntu можно из официального репозитория. Для этого необходимо произвести приведенную ниже последовательность действий.
- Провести пакетное обновление сервера:
$ sudo apt update
- Установить зависимости в Debian/Ubuntu:
$ sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
- Добавить ключ GPG от официального репозитория в систему управления пакетами APT (Advanced Packaging Tool):
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable" $ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- Обновить базы данных индекс-пакетов APT системы и переключиться в репозиторий Docker:
$ sudo apt update $ apt-cache policy docker-ce
В результате должен получиться вывод:
docker-ce: Installed: (none) Candidate: 18.06.1~ce~3-0~debian Version table: 18.06.1~ce~3-0~debian 500 500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
Примечание! При настройке под Ubuntu возврат будет с наименованиями, соответствующим текущей версии.
Теперь можно осуществить развертывание Docker на сервере.
- Установить Docker можно командой:
$ sudo apt install docker-ce
Docker под Ubuntu или Debian будет установлен автоматически.
- Проверить функциональность Docker:
$ sudo systemctl status docker
Команда должна вернуть следующее:
docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Thu 2018-07-05 15:08:39 UTC; 2min 55s ago Docs: https://docs.docker.com Main PID: 21319 (dockerd) CGroup: /system.slice/docker.service ├─21319 /usr/bin/dockerd -H fd:// └─21326 docker-containerd --config /var/run/docker/containerd/containerd.toml
Работа с образами в Debian/Ubuntu
Для чего создаются образы и как работают контейнеры в Docker можно узнать в этой статье.
Далее будет разобран алгоритм действий для работы с образами в установленном Docker.
1. Для начала, нужно проверить возможность загрузки и установки образов из DockerHub командой:
$ docker run hello-world
Возврат должен быть соответствующего содержания:
Output Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 9bb5a5d4561a: Pull complete Digest: sha256:3e1764d0f546ceac4565547df2ac4907fe46f007ea229fd7ef2718514bcec35d Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.
2. Для поиска готовых образов на DockerHub следует ввести команду Docker с подкомандой «search»:
$ docker search ubuntu
Возврат выдаст реестр всех доступных образов Ubuntu в виде довольно обширного списка.
3. Команда «Pull» поможет загрузить нужный образ:
$ docker pull ubuntu
Как установить Docker на Centos
Процесс развертки Docker на сервере под Centos намного проще, чем два рассмотренных выше случая.
1. Произвести пакетное обновление сервера:
sudo yum check-update
2. Ввести команду для установки платформы Docker:
curl -fsSL https://get.docker.com/ | sh
3. Если требуется запустить docker от root, необходимо ввести следующую команду:
sudo usermod -aG docker <имя пользователя>
4. Ввести команду запуска Docker под Centos:
sudo systemctl start docker sudo systemctl enable docker
Работа с образами в Centos
Для работы с образами Docker на VPS под Centos необходимо вводить те же команды, что и в Debian/Ubuntu:
- docker run hello-world — проверочная команда возможности загружать образы из DockerHub.
- docker search [NAME] — команда для поиска нужного образа, в конце команды добавляем название искомого образа.
- docker pull [NAME] — команда для загрузки найденного образа, в конце команды добавляем название соответствующего образа.
- docker run [NAME] — запуск контейнера.
- docker image — просмотр всех загруженных образов.
- docker container start [NAME/id] — запуск контейнера в фоновом режиме
Установка Docker в Debian 9
Docker — программное обеспечение для автоматизации развёртывания и управления приложениями в среде виртуализации на уровне операционной системы. Позволяет «упаковать» приложение со всем его окружением и зависимостями в контейнер, который может быть перенесён на любую Linux-систему с поддержкой cgroups в ядре, а также предоставляет среду по управлению контейнерами.
Перед установкой Docker, обновим существующий список пакетов Debian:
sudo apt update
Далее установим необходимые пакеты, которые позволяют apt использовать пакеты по HTTPS:
sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
Добавим в свою систему ключ GPG официального репозитория Docker:
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
Добавим репозиторий Docker в список источников пакетов APT:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
Затем обновим базу данных пакетов информацией о пакетах Docker из вновь добавленного репозитория:
sudo apt update
Для того чтобы убедиться, что установка Docker выполняется из репозитория Docker, а не из репозитория по умолчанию Ubuntu, выполним команду:
apt-cache policy docker-ce
root@kvmde67-19464:~# apt-cache policy docker-ce
docker-ce:
Installed: (none)
Candidate: 5:19.03.8~3-0~debian-stretch
Version table:
5:19.03.8~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:19.03.7~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:19.03.6~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:19.03.5~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:19.03.4~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:19.03.3~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:19.03.2~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:19.03.1~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:19.03.0~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.9~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.8~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.7~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.6~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.5~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.4~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.3~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.2~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.1~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
5:18.09.0~3-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
18.06.3~ce~3-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
18.06.2~ce~3-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
18.06.1~ce~3-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
18.06.0~ce~3-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
18.03.1~ce-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
18.03.0~ce-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.12.1~ce-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.12.0~ce-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.09.1~ce-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.09.0~ce-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.06.2~ce-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.06.1~ce-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.06.0~ce-0~debian 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.03.3~ce-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.03.2~ce-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.03.1~ce-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
17.03.0~ce-0~debian-stretch 500
500 https://download.docker.com/linux/debian stretch/stable amd64 Packages
При этом docker-ce не устанавливается, но для установки будет использован репозиторий Docker для Debian 9 (Stretch).
Устанавливаем Docker:
sudo apt install docker-ce
Docker установлен, процесс будет запускаться при загрузке системы.
Проверим, что процесс запущен:
sudo systemctl status docker
root@kvmde67-19464:~# sudo systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled
Active: active (running) since Wed 2020-05-06 15:15:44 MSK; 2min 51s ago
Docs: https://docs.docker.com
Main PID: 6594 (dockerd)
CGroup: /system.slice/docker.service
└─6594 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.so
May 06 15:15:44 kvmde67-19464.fornex.org dockerd[6594]: time="2020-05-06T15:15:44.4160
May 06 15:15:44 kvmde67-19464.fornex.org dockerd[6594]: time="2020-05-06T15:15:44.4167
May 06 15:15:44 kvmde67-19464.fornex.org dockerd[6594]: time="2020-05-06T15:15:44.4173
May 06 15:15:44 kvmde67-19464.fornex.org dockerd[6594]: time="2020-05-06T15:15:44.4182
May 06 15:15:44 kvmde67-19464.fornex.org dockerd[6594]: time="2020-05-06T15:15:44.6000
May 06 15:15:44 kvmde67-19464.fornex.org dockerd[6594]: time="2020-05-06T15:15:44.7043
May 06 15:15:44 kvmde67-19464.fornex.org dockerd[6594]: time="2020-05-06T15:15:44.8040
May 06 15:15:44 kvmde67-19464.fornex.org dockerd[6594]: time="2020-05-06T15:15:44.8067
May 06 15:15:44 kvmde67-19464.fornex.org systemd[1]: Started Docker Application Contai
May 06 15:15:44 kvmde67-19464.fornex.org dockerd[6594]: time="2020-05-06T15:15:44.8603
При установке Docker мы получаем не только сервис Docker, но и утилиту командной строки docker или клиент Docker.
Также для установки Docker вы можете воспользоваться нашим One-Click-Apps для установки одним нажатием клавиши.
Для этого выберите необходимый тарифный план VPS и выберите Приложения → Docker, для установки.
Учитывайте пожалуйста, что при этом Docker будет установлен на ОС Ubuntu 18.04.
Если у Вас возникли трудности в настройке или появились дополнительные вопросы, вы всегда можете обращаться в нашу службу поддержки через систему тикетов.
Как установить и использовать Docker в Debian 9
Docker — это платформа для контейнеризации, которая позволяет быстро создавать, тестировать и развертывать приложения в виде переносимых самодостаточных контейнеров, которые могут работать практически где угодно.
Docker де-факто является стандартом для контейнерных технологий и является важным инструментом для инженеров DevOps и их конвейера непрерывной интеграции и доставки.
Прежде чем приступить
Прежде чем продолжить это руководство, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo . Все команды в этом руководстве следует запускать от имени пользователя без полномочий root.
Установить Docker на Debian
Следующие шаги описывают, как установить последнюю стабильную версию Docker из репозиториев Docker.
-
Обновите установленные пакеты до последней версии:
sudo apt update
sudo apt upgrade
-
Установите зависимости, необходимые для добавления нового репозитория через HTTPS:
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg2
-
Импортируйте ключ GPG репозитория с помощью следующейcurl
команды :
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
Добавьте репозиторий Docker APT в список репозиториев программного обеспечения вашей системы, набрав:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
$(lsb_release -cs)
вернет имя дистрибутива Debian, в этом случае вернетstretch
.
-
Теперь, когда репозиторий Docker включен, обновитеapt
список пакетов и установите последнюю версию Docker CE (Community Edition) с помощью:
sudo apt update
sudo apt install docker-ce
-
После завершения установки служба Docker запустится автоматически. Вы можете проверить это, набрав:
sudo systemctl status docker
● docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2018-07-27 17:02:07 UTC; 1min 14s ago Docs: https://docs.docker.com Main PID: 16929 (dockerd) CGroup: /system.slice/docker.service
-
На момент написания текущая версия Docker, доступная для Debian 9, — это18.06.0-ce
. Проверьте версию Docker с помощью:
docker -v
Docker version 18.06.0-ce, build 0ffa825
Выполнение команды Docker без Sudo
По умолчанию только пользователь с правами администратора может выполнять команды Docker.
Если вы хотите запускать команды Docker от имени пользователя без полномочий root без предварительного добавления, sudo
вам необходимо добавить своего пользователя в группу докеров, которая создается во время установки пакета Docker CE. Вы можете сделать это, набрав:
sudo usermod -aG docker $USER
$USER
— это переменная среды, в которой хранится ваше имя пользователя.
Выйдите из системы и войдите снова, чтобы обновить членство в группе.
Чтобы убедиться, что вы можете запускать команды докера без предварительного sudo
запуска, выполните следующую команду, которая загрузит тестовое изображение, запустит его в контейнере, напечатает сообщение «Hello from Docker» и выйдет:
docker container run hello-world
Результат должен выглядеть следующим образом:
Интерфейс командной строки Docker
Теперь, когда у нас установлен Docker, давайте рассмотрим базовый синтаксис интерфейса командной строки docker:
docker [option] [subcommand] [arguments]
Чтобы вывести список всех доступных команд, запускаемых docker
без параметров:
docker
Если вам нужна дополнительная помощь по любому из них [subcommand]
, вы можете использовать --help
переключатель, как показано ниже:
docker [subcommand] --help
Образы Docker
Образ Docker состоит из ряда слоев файловой системы, представляющих инструкции в файле Dockerfile образа, которые составляют исполняемое программное приложение. Изображение — это неизменяемый двоичный файл, включающий приложение и все другие зависимости, такие как библиотеки, двоичные файлы и инструкции, необходимые для запуска приложения.
Вы можете думать об образе Docker как о снимке контейнера Docker.
Большинство образов Docker доступны в Docker Hub.
Docker Hub — это облачная служба реестра, которая, среди прочего, используется для хранения образов Docker в общедоступном или частном репозитории.
Поиск по изображению Docker
Чтобы найти изображение в реестре Docker Hub, используйте search
подкоманду.
Например, чтобы найти образ Debian, вы должны ввести:
docker search debian
Результат должен выглядеть так:
Как вы можете видеть результаты поиска печатает таблицу с пятью столбцами, NAME
, DESCRIPTION
, STARS
, OFFICIAL
и AUTOMATED
.
Официальный образ — это образ, который Docker разрабатывает совместно с партнерами по разработке.
Большинство образов Docker в Docker Hub помечены номерами версий. Если тег не указан, Docker извлечет последний образ.
Скачать образ Docker
Если мы хотим загрузить официальную сборку образа Debian, мы можем сделать это с помощью image pull
подкоманды:
docker image pull debian
В зависимости от скорости вашего интернета загрузка может занять несколько секунд или несколько минут.
Поскольку мы не указали тег, docker загрузит последний образ Debian, то есть 9.5. Если вы хотите использовать некоторые из предыдущих версий Debian , скажем, Debian 8, вам нужно использоватьdocker image pull debian:8
После загрузки изображения мы можем перечислить изображения, набрав:
docker image ls
Результат будет выглядеть примерно так:
Удалить образ Docker
Если по какой-то причине вы хотите удалить изображение, вы можете сделать это с помощью image rm [image_name]
подкоманды:
docker image rm debian
Контейнеры Docker
Экземпляр изображения называется контейнером. Контейнер представляет среду выполнения для отдельного приложения, процесса или службы.
Возможно, это не самое подходящее сравнение, но если вы программист, вы можете думать об образе Docker как о классе, а контейнер Docker как об экземпляре класса.
Мы можем запускать, останавливать, удалять и управлять контейнером с помощью docker container
подкоманды.
Запустить контейнер Docker
Следующая команда запустит контейнер Docker на основе образа Debian. Если у вас нет образа локально, сначала он будет загружен:
docker container run debian
На первый взгляд вам может показаться, что вообще ничего не произошло. Что ж, это неправда. Контейнер Debian останавливается сразу после загрузки, потому что у него нет длительного процесса, и мы не предоставили никакой команды, поэтому контейнер загрузился, выполнил пустую команду и затем завершил работу.
Переключатель -it
позволяет нам взаимодействовать с контейнером через командную строку. Чтобы запустить интерактивный контейнер, введите:
docker container run -it debian /bin/bash
root@ee86c8c81b3b:/#
Как видно из выходных данных выше, после запуска контейнера командная строка изменяется, что означает, что теперь вы работаете изнутри контейнера .
Список контейнеров Docker
Чтобы вывести список запущенных контейнеров , введите:
docker container ls
Если у вас нет запущенных контейнеров, вывод будет пустым.
Чтобы просмотреть все контейнеры, передайте -a
переключатель:
docker container ls -a
Удалить контейнеры Docker
Чтобы удалить один или несколько контейнеров, просто скопируйте идентификатор контейнера (или идентификаторы) и вставьте их после container rm
подкоманды:
docker container rm c55680af670c
Заключение
Вы узнали, как установить Docker на свой компьютер Debian 9 и как загружать образы Docker и управлять контейнерами Docker. Этот учебник едва ли поверхностно затрагивает экосистему Docker. В некоторых из наших следующих статей мы продолжим углубляться в другие аспекты Docker.
Вам также следует ознакомиться с официальной документацией Docker .
Установка Docker Compose в Debian 9
Docker — программное обеспечение для автоматизации развёртывания и управления приложениями в среде виртуализации на уровне операционной системы. Позволяет «упаковать» приложение со всем его окружением и зависимостями в контейнер, который может быть перенесён на любую Linux-систему с поддержкой cgroups в ядре, а также предоставляет среду по управлению контейнерами.
Compose инструмент для создания и запуска многоконтейнерных Docker приложений. В Compose, вы используете специальный файл для конфигурирования ваших сервисов приложения.
Особенности Compose, которые делают его эффективным:
- Несколько изолированных сред на одном хосте
- Защита данных тома при создании контейнеров
- Пересоздаются только измененные контейнеры
- Перемещение переменных между средами
Перед установкой Docker Compose убедитесь что Docker установлен, подробно с установкой можно ознакомиться в данном руководстве.
Установка Docker Compose
Выполним установку Docker Compose из репозитория Docker на GitHub. Представленный ниже синтаксис позволяет избежать ошибки отсутствия прав доступа, возникающую при использовании sudo.
Проверим текущую версию и при необходимости обновим ее с помощью следующей команды:
sudo curl -L https://github.com/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
root@kvmde67-19464:~# sudo curl -L https://github.com/docker/compose/releases/download/1.25.5/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 638 100 638 0 0 979 0 --:--:-- --:--:-- --:--:-- 980
100 16.7M 100 16.7M 0 0 1198k 0 0:00:14 0:00:14 --:--:-- 2471k
Далее настроим разрешения:
sudo chmod +x /usr/local/bin/docker-compose
Затем мы проверим, что установка прошла успешно:
docker-compose --version
Вы увидите подобный вывод:
root@kvmde67-19464:~# docker-compose --version
docker-compose version 1.25.5, build 8a1c60f6
Запуск контейнера с помощью Docker Compose
В реестре Docker, Docker Hub, содержится образ Hello World, используемый для демонстрации и тестирования. Он демонстрирует минимальные параметры конфигурации, необходимые для запуска контейнера с помощью Docker Compose: файл YAML, вызывающий отдельный образ:
Создадим директорию для файла YAML:
mkdir hello-world
Перейдем в нее:
cd hello-world
Далее создадим в этой директории файл YAML:
nano docker-compose.yml
Поместите в файл следующие данные, сохраните его и закройте текстовый редактор:
my-test:
image: hello-world
Первая строка файла YAML используется в качестве части имени контейнера.
Вторая строка указывает, какой образ используется для создания контейнера.
При запуске команды docker-compose up она будет искать локальный образ по указанному имени, т.е. hello-world.
Далее можно просмотреть образы в нашей системе с помощью команды docker images:
docker images
Когда локальные образы отсутствуют, будут отображены только заголовки столбцов:
REPOSITORY TAG IMAGE ID CREATED SIZE
Далее, находясь в директории ~/hello-world, мы выполним следующую команду:
docker-compose up
После загрузки образа docker-compose создает контейнер, помещает в него и запускает программу hello:
root@kvmde67-19464:~/hello-world# docker-compose up
Creating hello-world_my-test_1 ... done
Attaching to hello-world_my-test_1
my-test_1 |
my-test_1 | Hello from Docker!
my-test_1 | This message shows that your installation appears to be working correctly.
my-test_1 |
my-test_1 | To generate this message, Docker took the following steps:
my-test_1 | 1. The Docker client contacted the Docker daemon.
my-test_1 | 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
my-test_1 | (amd64)
my-test_1 | 3. The Docker daemon created a new container from that image which runs the
my-test_1 | executable that produces the output you are currently reading.
my-test_1 | 4. The Docker daemon streamed that output to the Docker client, which sent it
my-test_1 | to your terminal.
my-test_1 |
my-test_1 | To try something more ambitious, you can run an Ubuntu container with:
my-test_1 | $ docker run -it ubuntu bash
my-test_1 |
my-test_1 | Share images, automate workflows, and more with a free Docker ID:
my-test_1 | https://hub.docker.com/
my-test_1 |
my-test_1 | For more examples and ideas, visit:
my-test_1 | https://docs.docker.com/get-started/
my-test_1 |
hello-world_my-test_1 exited with code 0
Контейнеры Docker продолжают работать, пока команда остается активной, поэтому после завершения работы hello контейнер останавливается. Следовательно, когда мы просматриваем активные процессы, заголовки столбцов будут появляться, но контейнер hello-world не будет появляться в списке, поскольку он не запущен.
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Мы можем просмотреть информацию контейнера, используя флаг -a, с помощью которого можно отобразить все контейнеры, а не только активные:
docker ps -a
root@kvmde67-19464:~/hello-world# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4e8158d490ac hello-world "/hello" 7 minutes ago Exited (0) 7 minutes ago hello-world_my-test_1
Установите Docker Engine на Debian
Приблизительное время чтения: 11 минут
Чтобы начать работу с Docker Engine в Debian, убедитесь, что вы
выполнить предпосылки, тогда
установить Docker.
Предварительные требования
Требования к ОС
Для установки Docker Engine вам потребуется 64-разрядная версия одного из этих Debian или
Версии Raspbian:
- Debian Bullseye 11 (стабильная)
- Debian Buster 10 (старая стабильная версия)
- Raspbian Bullseye 11 (стабильный)
- Raspbian Buster 10 (старый стабильный)
Docker Engine поддерживается на архитектурах x86_64
(или amd64
), armhf
и arm64
.
Удалить старые версии
Старые версии Docker назывались docker
, docker.io
или docker-engine
.
Если они установлены, удалите их:
$ sudo apt-get remove docker docker-engine docker.io containerd runc
Это нормально, если apt-get
сообщает, что ни один из этих пакетов не установлен.
Содержимое / var / lib / docker /
, включая образы, контейнеры, тома и
сети, сохраняются.Пакет Docker Engine теперь называется docker-ce
.
Способы установки
Вы можете установить Docker Engine по-разному, в зависимости от ваших потребностей:
Большинство пользователей
настроить репозитории Docker и установить
от них, для простоты установки и задач обновления. Это
рекомендуемый подход, кроме Raspbian.Некоторые пользователи скачивают пакет DEB и
установить его вручную и управлять
полностью обновляется вручную.Это полезно в таких ситуациях, как установка
Докер в системах с воздушными зазорами без доступа к Интернету.В средах тестирования и разработки некоторые пользователи предпочитают использовать автоматизированные
удобные скрипты для установки Docker.
В настоящее время это единственный подход для Raspbian.
Установить с помощью репозитория
Перед первой установкой Docker Engine на новый хост-компьютер вам необходимо
для настройки репозитория Docker.После этого вы можете установить и обновить Docker.
из репозитория.
Пользователи Raspbian не могут использовать этот метод!
Для Raspbian установка с использованием репозитория пока не поддерживается. Вы должны
вместо этого используйте удобный сценарий.
Настроить репозиторий
Обновите индекс пакета
apt
и установите пакеты, чтобы разрешитьapt
использовать
репозиторий через HTTPS:$ sudo apt-get update $ sudo apt-get install \ АПТ-транспорт-https \ ca-сертификаты \ завиток \ gnupg \ lsb-релиз
Добавить официальный ключ GPG Докера:
$ curl -fsSL https: // скачать.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
Используйте следующую команду для настройки стабильного репозитория . Чтобы добавить
nightly или test repository, добавьте словоnightly
илиtest
(или оба)
после словастабильный
в приведенных ниже командах. Узнайте о ночных каналах и тестируйте каналы .Примечание : Подкоманда
lsb_release -cs
ниже возвращает имя вашего
Дистрибутив Debian, напримергелий
.Иногда в раздаче
как и BunsenLabs Linux, вам может потребоваться изменить$ (lsb_release -cs)
в ваш родительский дистрибутив Debian. Например, если вы используете
BunsenLabs Linux Helium
, вы можете использоватьstretch
. Docker не дает никаких гарантий на непроверенные
и неподдерживаемые дистрибутивы Debian.$ эхо \ "deb [arch = $ (dpkg --print-architecture) signed-by = / usr / share / keyrings / docker-archive-keyring.gpg] https: // download.docker.com/linux/debian \ $ (lsb_release -cs) стабильный "| sudo tee /etc/apt/sources.list.d/docker.list> / dev / null
Установить Docker Engine
Эта процедура работает для Debian на x86_64
/ amd64
, armhf
, arm64
и Raspbian.
Обновите индекс пакета
apt
и установите последнюю версию Docker
Engine и containerd, либо перейдите к следующему шагу, чтобы установить определенную версию:$ sudo apt-get update $ sudo apt-get install docker-ce docker-ce-cli containerd.io
У вас несколько репозиториев Docker?
Если у вас включено несколько репозиториев Docker, установка
или обновление без указания версии вapt-get install
или
apt-get update Команда
всегда устанавливает максимально возможную версию,
что может не соответствовать вашим потребностям в стабильности.Чтобы установить версию Docker Engine для , перечислите доступные версии.
в репо, затем выберите и установите:а.Перечислите версии, доступные в вашем репо:
$ APT-кеш Мэдисон Докер-СЕ docker-ce | 5: 18.09.1 ~ 3-0 ~ debian-stretch | https://download.docker.com/linux/debian stretch / стабильные пакеты amd64 docker-ce | 5: 18.09.0 ~ 3-0 ~ debian-stretch | https://download.docker.com/linux/debian stretch / стабильные пакеты amd64 docker-ce | 18.06.1 ~ ce ~ 3-0 ~ debian | https://download.docker.com/linux/debian stretch / стабильные пакеты amd64 docker-ce | 18.06.0 ~ ce ~ 3-0 ~ debian | https: // скачать.docker.com/linux/debian stretch / стабильные пакеты amd64
г. Установите конкретную версию, используя строку версии из второго столбца,
например,5: 18.09.1 ~ 3-0 ~ debian-stretch
.$ sudo apt-get install docker-ce =
docker-ce-cli = containerd.io Убедитесь, что Docker Engine установлен правильно, запустив
hello-world
изображение.$ sudo docker run привет-мир
Эта команда загружает тестовый образ и запускает его в контейнере. Когда
контейнер запускается, он печатает сообщение и закрывается.
Docker Engine установлен и работает. Группа docker
создана, но пользователей нет
добавляются к нему. Вам нужно использовать sudo
для запуска команд Docker.
Перейдите к постинсталляции Linux, чтобы разрешить непривилегированное
пользователи могут запускать команды Docker и выполнять другие необязательные шаги настройки.
Обновление Docker Engine
Чтобы обновить Docker Engine, сначала запустите sudo apt-get update
, затем следуйте инструкциям
инструкция по установке, выбрав новый
версию, которую вы хотите установить.
Установить из пакета
Если вы не можете использовать репозиторий Docker для установки Docker Engine, вы можете загрузить
.deb
для вашего выпуска и установите его вручную. Вам нужно скачать
новый файл каждый раз, когда вы хотите обновить Docker.
Перейти на
https: // загрузить.docker.com/linux/debian/dists/
,
выберите свою версию Debian, затем перейдите к пулу/ стабильному /
, выберитеamd64
,
armhf
илиarm64
и загрузите файл.deb
для Docker Engine.
версию, которую вы хотите установить.Примечание
Чтобы установить пакет nightly или test (предварительный выпуск),
замените словостабильный
в указанном выше URL наnightly
илиtest
.Узнайте о ночных каналах и тестируйте каналы .Установите Docker Engine, изменив путь ниже на путь, по которому вы скачали
пакет Docker.$ sudo dpkg -i /path/to/package.deb
Демон Docker запускается автоматически.
Убедитесь, что Docker Engine установлен правильно, запустив
hello-world
изображение.$ sudo docker run привет-мир
Эта команда загружает тестовый образ и запускает его в контейнере.Когда
контейнер запускается, он печатает сообщение и закрывается.
Docker Engine установлен и работает. Группа docker
создана, но пользователей нет
добавляются к нему. Вам нужно использовать sudo
для запуска команд Docker.
Перейдите к шагам после установки для Linux, чтобы разрешить
непривилегированные пользователи для запуска команд Docker и для другой необязательной конфигурации
шаги.
Обновление Docker Engine
Чтобы обновить Docker Engine, загрузите новый файл пакета и повторите
процедура установки, указав на новый файл.
Установить с помощью вспомогательного скрипта
Docker предоставляет удобный скрипт на get.docker.com
для быстрой и неинтерактивной установки Docker в среду разработки.
Удобный скрипт не рекомендуется для производственной среды, но его можно
используется в качестве примера для создания сценария подготовки, адаптированного к вашим потребностям.
Также обратитесь к установке с использованием репозитория
шаги, чтобы узнать о шагах установки для установки с использованием репозитория пакетов.
Исходный код скрипта имеет открытый исходный код, и его можно найти в
docker-install репозиторий
на GitHub.
Всегда проверяйте загруженные из Интернета сценарии перед их локальным запуском.
Перед установкой ознакомьтесь с потенциальными рисками и ограничениями.
сценария удобства:
- Для запуска сценария требуются
root
илиsudo
привилегий. - Сценарий пытается определить ваш дистрибутив и версию Linux и
настроить вашу систему управления пакетами для вас, и не позволяет вам
настроить большинство параметров установки. - Скрипт устанавливает зависимости и рекомендации, не запрашивая
подтверждение. Это может установить большое количество пакетов, в зависимости от
текущая конфигурация вашего хост-компьютера. - По умолчанию скрипт устанавливает последнюю стабильную версию Docker, containerd,
и runc. При использовании этого сценария для подготовки машины это может привести к
неожиданные обновления основной версии Docker. Всегда тестируйте (основные) обновления в
тестовую среду перед развертыванием в ваших производственных системах. - Сценарий не предназначен для обновления существующей установки Docker. Когда
используя скрипт для обновления существующей установки, зависимости могут не быть
обновлен до ожидаемой версии, в результате чего будут использоваться устаревшие версии.
Совет: предварительный просмотр шагов сценария перед запуском
Вы можете запустить сценарий с опцией
DRY_RUN = 1
, чтобы узнать, какие шаги
скрипт выполнится во время установки:$ curl -fsSL https: // get.docker.com -o get-docker.sh $ DRY_RUN = 1 ш ./get-docker.sh
В этом примере скрипт загружается с get.docker.com
и запускает его для установки последней стабильной версии Docker в Linux:
$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh
Выполнение скрипта установки докера, фиксация: 7cae5f8b0decc17d6571f9f52eb840fbc13b2737
<...>
Докер установлен. Служба docker
запускается автоматически в Debian на основе
раздачи.В дистрибутивах на основе RPM и
, таких как CentOS, Fedora, RHEL или SLES,
вам нужно запустить его вручную с помощью соответствующей команды systemctl
или service
.
Как указано в сообщении, пользователи без полномочий root не могут запускать команды Docker по умолчанию.
Использовать Docker как непривилегированный пользователь или установить в режиме без root?
Сценарий установки требует
root
илиsudo
привилегий для установки и
использовать Docker.Если вы хотите предоставить пользователям без полномочий root доступ к Docker, см.
послеустановочные шаги для Linux.
Docker также можно установить безroot
привилегий или настроить для запуска
в безруневом режиме. Инструкции по запуску Docker в режиме без root см. В
запустите демон Docker от имени пользователя без полномочий root (режим без полномочий root).
Установить предварительные версии
Docker также предоставляет удобный скрипт на test.docker.com.
для установки предварительных релизов Docker в Linux. Этот сценарий эквивалентен
скрипт на получить.docker.com
, но настраивает диспетчер пакетов для включения
«Тестовый» канал из нашего репозитория пакетов, который включает как стабильные, так и
пре-релизы (бета-версии, релиз-кандидаты) Docker. Используйте этот скрипт для
получить ранний доступ к новым выпускам и оценить их в тестовой среде
прежде, чем они будут выпущены как стабильные.
Чтобы установить последнюю версию Docker в Linux из «тестового» канала, запустите:
$ curl -fsSL https://test.docker.com -o test-docker.ш
$ sudo sh test-docker.sh
<...>
Обновите Docker после использования вспомогательного скрипта
Если вы установили Docker с помощью вспомогательного скрипта, вам следует обновить Docker.
напрямую с помощью диспетчера пакетов. Нет никаких преимуществ в повторном запуске
удобный сценарий, и он может вызвать проблемы, если он попытается повторно добавить
репозитории, которые уже были добавлены на хост-машину.
Удалить Docker Engine
Удалите пакеты Docker Engine, CLI и Containerd:
$ sudo apt-get purge docker-ce docker-ce-cli containerd.io
Образы, контейнеры, тома или настраиваемые файлы конфигурации на вашем хосте
не удаляются автоматически. Чтобы удалить все изображения, контейнеры и
тома:$ sudo rm -rf / var / lib / докер $ sudo rm -rf / var / lib / containerd
Все отредактированные файлы конфигурации необходимо удалить вручную.
Следующие шаги
требования, apt, установка, debian, установка, удаление, обновление, обновление
Как установить и использовать Docker в Debian 9
Не используете Debian 9?
Выберите другую версию или дистрибутив.
Debian 9
Предыдущая версия этого руководства была написана finid.
Введение
Docker — это приложение, упрощающее процесс управления процессами приложений в контейнерах . Контейнеры позволяют запускать приложения в процессах, изолированных от ресурсов. Они похожи на виртуальные машины, но контейнеры более портативны, удобнее в использовании и больше зависят от операционной системы хоста.
Для подробного ознакомления с различными компонентами контейнера Docker см. Экосистема Docker: Введение в общие компоненты.
В этом руководстве вы установите и используете Docker Community Edition (CE) в Debian 9. Вы установите сам Docker, поработаете с контейнерами и образами и отправите образ в репозиторий Docker.
Предварительные требования
Чтобы следовать этому руководству, вам понадобится следующее:
- Один сервер Debian 9, настроенный в соответствии с руководством по начальной настройке сервера Debian 9, включая пользователя sudo без полномочий root и брандмауэр.
- Учетная запись в Docker Hub, если вы хотите создавать свои собственные образы и отправлять их в Docker Hub, как показано в шагах 7 и 8.
Шаг 1. Установка Docker
Установочный пакет Docker, доступный в официальном репозитории Debian, может быть не последней версией. Чтобы получить последнюю версию, мы установим Docker из официального репозитория Docker. Для этого мы добавим новый источник пакета, добавим ключ GPG из Docker, чтобы убедиться, что загрузки действительны, а затем установим пакет.
Сначала обновите существующий список пакетов:
Затем установите несколько необходимых пакетов, которые позволяют apt
использовать пакеты через HTTPS:
- sudo apt install apt-transport-https ca-Certificates curl gnupg2 software-properties-common
Затем добавьте в свою систему ключ GPG для официального репозитория Docker:
- curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key добавить -
Добавить репозиторий Docker в источники APT:
- sudo add-apt-repository "deb [arch = amd64] https: // download.docker.com/linux/debian $ (lsb_release -cs) стабильный "
Затем обновите базу данных пакетов пакетами Docker из недавно добавленного репо:
Убедитесь, что вы собираетесь установить из репозитория Docker вместо репозитория Debian по умолчанию:
- apt-cache policy docker-ce
Вы увидите такой вывод, хотя номер версии для Docker может быть другим:
Вывод политики apt-cache policy docker-ce
docker-ce:
Установлено: (нет)
Кандидат: 18.06.1 ~ ce ~ 3-0 ~ debian
Таблица версий:
18.06.1 ~ ce ~ 3-0 ~ debian 500
500 https://download.docker.com/linux/debian stretch / стабильных пакетов amd64
Обратите внимание, что docker-ce
не установлен, но кандидат на установку находится из репозитория Docker для Debian 9 ( stretch
).
Наконец, установите Docker:
- sudo apt установить docker-ce
Docker должен быть установлен, демон запущен, и процесс должен запускаться при загрузке.Убедитесь, что он работает:
- sudo systemctl status docker
Вывод должен быть похож на следующий, показывая, что служба активна и работает:
Вывод
● docker.service - механизм контейнеров приложений Docker
Загружено: загружено (/lib/systemd/system/docker.service; включено; предустановка поставщика: включено)
Активен: активен (работает) с Thu 2018-07-05 15:08:39 UTC; 2мин 55с назад
Документы: https: // docs.docker.com
Основной PID: 21319 (dockerd)
CGroup: /system.slice/docker.service
├─21319 / usr / bin / dockerd -H fd: //
└─21326 docker-containerd --config /var/run/docker/containerd/containerd.toml
Установка Docker теперь дает вам не только службу Docker (демон), но и утилиту командной строки docker
или клиент Docker. Позже в этом руководстве мы узнаем, как использовать команду docker
.
Шаг 2. Выполнение команды Docker без Sudo (необязательно)
По умолчанию команда docker
может быть запущена только пользователем root или пользователем из группы docker , которая автоматически создается в процессе установки Docker.Если вы попытаетесь запустить команду docker
без префикса sudo
или не входя в группу docker , вы получите следующий результат:
Вывод
docker: не удается подключиться к демону Docker. На этом хосте запущен демон докера?
См. Docker run --help.
Если вы не хотите вводить sudo
при каждом запуске команды docker
, добавьте свое имя пользователя в группу docker
:
- sudo usermod -aG docker $ {USER}
Чтобы применить новое членство в группе, выйдите из сервера и снова войдите или введите следующее:
Вам будет предложено ввести пароль пользователя, чтобы продолжить.
Подтвердите, что ваш пользователь теперь добавлен в группу docker , набрав:
Выход
sammy sudo docker
Если вам нужно добавить пользователя в группу docker
, под которым вы не вошли в систему, явно укажите это имя пользователя, используя:
- sudo usermod -aG имя пользователя docker
В оставшейся части статьи предполагается, что вы запускаете команду docker
как пользователь в группе docker .Если вы решите не делать этого, добавьте к командам sudo
.
Давайте теперь рассмотрим команду docker
.
Шаг 3. Использование команды Docker
Использование докера
состоит из передачи ему цепочки опций и команд, за которыми следуют аргументы. Синтаксис имеет следующий вид:
- докер [параметр] [команда] [аргументы]
Чтобы просмотреть все доступные подкоманды, введите:
Начиная с Docker 18 полный список доступных подкоманд включает:
Выход
прикрепить Присоединить локальные стандартные потоки ввода, вывода и ошибок к работающему контейнеру
build Построить образ из Dockerfile
commit Создать новый образ из изменений контейнера
cp Копировать файлы / папки между контейнером и локальной файловой системой
create Создать новый контейнер
diff Проверять изменения файлов или каталогов в файловой системе контейнера
события Получайте события в реальном времени с сервера
exec Выполнить команду в работающем контейнере
экспорт Экспорт файловой системы контейнера как tar-архива
история Показать историю изображения
изображения Список изображений
import Импортировать содержимое из архива для создания образа файловой системы
info Отображение общесистемной информации
inspect Возвращает низкоуровневую информацию об объектах Docker
kill Убить один или несколько запущенных контейнеров
load Загрузить изображение из tar-архива или STDIN
войти Войдите в реестр Docker
logout Выйти из реестра Docker
logs Получить журналы контейнера
pause Приостановить все процессы в одном или нескольких контейнерах
порт Список сопоставлений портов или конкретное сопоставление для контейнера
ps Список контейнеров
pull Извлечь изображение или репозиторий из реестра
push Отправить образ или репозиторий в реестр
переименовать Переименовать контейнер
перезапустить Перезагрузить один или несколько контейнеров
rm Удалите один или несколько контейнеров
rmi Удалить одно или несколько изображений
run Выполнить команду в новом контейнере
сохранить Сохранить одно или несколько изображений в tar-архив (по умолчанию передается в STDOUT)
поиск Поиск изображений в Docker Hub
start Запустить один или несколько остановленных контейнеров
stats Отображение в реальном времени статистики использования ресурсов контейнера (ов)
stop Остановить один или несколько работающих контейнеров
tag Создайте тег TARGET_IMAGE, который ссылается на SOURCE_IMAGE
наверх Отображение запущенных процессов контейнера
unpause Отменить все процессы в одном или нескольких контейнерах
update Обновить конфигурацию одного или нескольких контейнеров
version Показать информацию о версии Docker
ждать Блокируйте, пока не остановится один или несколько контейнеров, затем распечатайте их коды выхода
Чтобы просмотреть параметры, доступные для конкретной команды, введите:
- docker docker-подкоманда --help
Для просмотра общесистемной информации о Docker используйте:
Давайте рассмотрим некоторые из этих команд.Начнем с работы с изображениями.
Шаг 4. Работа с образами Docker
Docker-контейнеры построены из Docker-образов. По умолчанию Docker извлекает эти образы из Docker Hub, реестра Docker, управляемого Docker, компанией, стоящей за проектом Docker. Любой желающий может разместить свои образы Docker в Docker Hub, поэтому для большинства приложений и дистрибутивов Linux, которые вам понадобятся, будут размещены образы именно там.
Чтобы проверить, можете ли вы получить доступ и загрузить образы из Docker Hub, введите:
Вывод укажет, что Docker работает правильно:
Выход
Невозможно найти изображение 'hello-world: latest' локально
последнее: извлечение из библиотеки / hello-world
9db2ca6ccae0: Извлечение завершено
Дайджест: sha256: 4b8ff392a12ed9ea17784bd3c9a8b1fa3299cac44aca35a85c90c5e3c7afacdc
Статус: загружено новое изображение для hello-world: latest
Привет из Докера!
Это сообщение показывает, что ваша установка работает правильно....
Docker изначально не смог найти образ hello-world
локально, поэтому он загрузил образ из Docker Hub, который является репозиторием по умолчанию. После загрузки образа Docker создал контейнер из образа, и приложение в контейнере запустилось, отобразив сообщение.
Вы можете искать образы, доступные в Docker Hub, с помощью команды docker
с подкомандой search
. Например, чтобы найти образ Ubuntu, введите:
Скрипт просканирует Docker Hub и вернет список всех изображений, имена которых соответствуют строке поиска.В этом случае результат будет примерно таким:
Выход
ИМЯ ОПИСАНИЕ ЗВЕЗДЫ ОФИЦИАЛЬНЫЙ АВТОМАТ
ubuntu Ubuntu - это операционная система Linux на основе Debian… 8320 [OK]
dorowu / ubuntu-desktop-lxde-vnc Ubuntu с openssh-server и NoVNC 214 [OK]
rastasheep / ubuntu-sshd Dockerized SSH-сервис, созданный на основе офи… 170 [OK]
consol / ubuntu-xfce-vnc Контейнер Ubuntu с "безголовым" сеансом VNC… 128 [OK]
доступный / убунту14.04-ansible Ubuntu 14.04 LTS с ansible 95 [OK]
ubuntu-upstart Upstart - это основанная на событиях замена th… 88 [OK]
Neurodebian NeuroDebian предоставляет исследования в области нейробиологии… 53 [OK]
1and1internet / ubuntu-16-nginx-php-phpmyadmin-mysql-5 ubuntu-16-nginx-php-phpmyadmin-mysql-5 43 [ОК]
ubuntu-debootstrap debootstrap --variant = minbase --components = m… 39 [OK]
nuagebec / ubuntu Простые всегда обновляемые образы докеров Ubuntu w… 23 [OK]
tutum / ubuntu Простые образы докеров Ubuntu с доступом по SSH 18
i386 / ubuntu Ubuntu - это операционная система Linux на основе Debian… 13
1and1internet / ubuntu-16-apache-php-7.0 ubuntu-16-apache-php-7.0 12 [ОК]
ppc64le / ubuntu Ubuntu - это операционная система Linux на основе Debian… 12
eclipse / ubuntu_jdk8 Ubuntu, JDK8, Maven 3, git, curl, nmap, mc,… 6 [OK]
darksheer / ubuntu Базовый образ Ubuntu - обновляется ежечасно 4 [OK]
codenvy / ubuntu_jdk8 Ubuntu, JDK8, Maven 3, git, curl, nmap, mc,… 4 [ОК]
1and1internet / ubuntu-16-nginx-php-5.6-wordpress-4 ubuntu-16-nginx-php-5.6-wordpress-4 3 [ОК]
pivotaldata / ubuntu Быстрое обновление базовой документации Ubuntu… 2
1and1internet / ubuntu-16-sshd ubuntu-16-sshd 1 [ОК]
ossobv / ubuntu Пользовательский образ ubuntu с нуля (на основе o… 0
smartentry / ubuntu ubuntu с умной обработкой 0 [OK]
1and1internet / ubuntu-16-healthcheck ubuntu-16-healthcheck 0 [OK]
pivotaldata / ubuntu-gpdb-dev образы Ubuntu для разработки GPDB 0
paasmule / bosh-tools-ubuntu bosh-cli 0 на основе Ubuntu [OK]
...
В столбце OFFICIAL , OK указывает изображение, созданное и поддерживаемое компанией, стоящей за проектом. После того, как вы определили изображение, которое хотите использовать, вы можете загрузить его на свой компьютер с помощью подкоманды pull
.
Выполните следующую команду, чтобы загрузить официальный образ ubuntu
на свой компьютер:
Вы увидите следующий результат:
Выход
Использование тега по умолчанию: последний
последнее: извлечение из библиотеки / ubuntu
6b98dfc16071: Вытягивание завершено
4001a1209541: Вытягивание завершено
6319fc68c576: Вытягивание завершено
b24603670dc3: Вытягивание завершено
97f170c87c6f: Вытягивание завершено
Дайджест: sha256: 5f4bdc3467537cbbe563e80db2c3ec95d548a9145d64453b06939c4592d67b6d
Статус: загружено более новое изображение для ubuntu: последнее
После загрузки образа вы можете запустить контейнер, используя загруженный образ с подкомандой run
.Как вы видели в примере hello-world
, если образ не был загружен при выполнении docker
с подкомандой run
, клиент Docker сначала загрузит образ, а затем запустит контейнер, используя его.
Чтобы просмотреть изображения, загруженные на ваш компьютер, введите:
Результат должен выглядеть примерно так:
Выход
РЕПОЗИТОРНЫЙ ТЕГ ИДЕНТИФИКАТОР ИЗОБРАЖЕНИЯ СОЗДАННЫЙ РАЗМЕР
ubuntu последнее 16508e5c265d 13 дней назад 84.1 МБ
hello-world последнее 2cb0d9787c4d 7 недель назад 1.85kB
Как вы увидите далее в этом руководстве, образы, которые вы используете для запуска контейнеров, можно модифицировать и использовать для создания новых образов, которые затем могут быть загружены ( push — технический термин) в Docker Hub или другие реестры Docker.
Давайте посмотрим, как запускать контейнеры более подробно.
Шаг 5. Запуск контейнера Docker
Контейнер hello-world
, который вы запустили на предыдущем шаге, является примером контейнера, который запускается и завершается после отправки тестового сообщения.Контейнеры могут быть гораздо более полезными, и они могут быть интерактивными. В конце концов, они похожи на виртуальные машины, только более ресурсоемкие.
В качестве примера давайте запустим контейнер, используя последний образ Ubuntu. Комбинация переключателей -i и -t дает вам интерактивный доступ к оболочке контейнера:
Ваша командная строка должна измениться, чтобы отразить тот факт, что вы сейчас работаете внутри контейнера, и должна иметь следующую форму:
Выход
root @ d9b100f2f636: / #
Обратите внимание на идентификатор контейнера в командной строке.В этом примере это d9b100f2f636
. Этот идентификатор понадобится вам позже, чтобы идентифицировать контейнер, когда вы захотите его удалить.
Теперь вы можете запускать любую команду внутри контейнера. Например, давайте обновим базу данных пакетов внутри контейнера. Вам не нужно добавлять префикс sudo
к какой-либо команде, потому что вы работаете внутри контейнера как корневой пользователь :
Тогда установите в него любое приложение. Давайте установим Node.js:
Это устанавливает Node.js в контейнер из официального репозитория Ubuntu. По завершении установки убедитесь, что установлен Node.js:
Вы увидите номер версии, отображаемый в вашем терминале:
Выход
v8.10.0
Любые изменения, которые вы вносите внутри контейнера, применяются только к этому контейнеру.
Чтобы выйти из контейнера, введите в командной строке exit
.
Давайте теперь посмотрим на управление контейнерами в нашей системе.
Шаг 6. Управление контейнерами Docker
После некоторого использования Docker на вашем компьютере будет много активных (работающих) и неактивных контейнеров. Чтобы просмотреть активных , используйте:
Вы увидите результат, подобный следующему:
Выход
КОНТЕЙНЕР ID ИЗОБРАЖЕНИЕ КОМАНДА СОЗДАНА
В этом руководстве вы запустили два контейнера; один из образа hello-world
, а другой из образа ubuntu
.Оба контейнера больше не работают, но все еще существуют в вашей системе.
Чтобы просмотреть все контейнеры — активные и неактивные, запустите docker ps
с переключателем -a
:
Вы увидите следующий результат:
d9b100f2f636 ubuntu "/ bin / bash" Около часа назад Завершился (0) 8 минут назад sharp_volhard
01c950718166 hello-world "/ hello" Около часа назад Завершился (0) Около часа назад festive_williams
Чтобы просмотреть последний созданный контейнер, передайте ему ключ -l
:
- ИДЕНТИФИКАТОР КОНТЕЙНЕРА ИДЕНТИФИКАЦИЯ ИЗОБРАЖЕНИЯ КОМАНДА СОЗДАНО СОСТОЯНИЕ ИМЕНА ПОРТОВ
- d9b100f2f636 ubuntu "/ bin / bash" Около часа назад Завершился (0) 10 минут назад sharp_volhard
Чтобы запустить остановленный контейнер, используйте docker start
, за которым следует идентификатор или имя контейнера.Давайте запустим контейнер на основе Ubuntu с идентификатором d9b100f2f636
:
- докер старт d9b100f2f636
Контейнер запустится, и вы можете использовать docker ps
, чтобы увидеть его статус:
КОНТЕЙНЕР ИДЕНТИФИКАЦИЯ ИЗОБРАЖЕНИЕ КОМАНДА СОЗДАНО СОСТОЯНИЕ ИМЕНА ПОРТОВ
d9b100f2f636 ubuntu "/ bin / bash" Около часа назад Повышение на 8 секунд sharp_volhard
Чтобы остановить работающий контейнер, используйте docker stop
, за которым следует идентификатор или имя контейнера.На этот раз мы будем использовать имя, которое Docker присвоило контейнеру, а именно: sharp_volhard
:
.
- docker stop sharp_volhard
Если вы решили, что контейнер вам больше не нужен, удалите его с помощью команды docker rm
, снова используя либо идентификатор контейнера, либо имя. Используйте команду docker ps -a
, чтобы найти идентификатор или имя контейнера, связанного с образом hello-world
, и удалить его.
- docker rm festive_williams
Вы можете запустить новый контейнер и дать ему имя с помощью переключателя --name
. Вы также можете использовать переключатель --rm
для создания контейнера, который удаляется при остановке. См. Команду docker run help
для получения дополнительной информации об этих и других параметрах.
Контейнеры можно превратить в образы, которые можно использовать для создания новых контейнеров. Давайте посмотрим, как это работает.
Шаг 7. Фиксация изменений контейнера в образе Docker
Когда вы запускаете образ Docker, вы можете создавать, изменять и удалять файлы так же, как на виртуальной машине. Внесенные вами изменения будут применяться только к этому контейнеру. Вы можете запускать и останавливать его, но как только вы уничтожите его с помощью команды docker rm
, изменения будут потеряны навсегда.
В этом разделе показано, как сохранить состояние контейнера в виде нового образа Docker.
После установки Node.js внутри контейнера Ubuntu, теперь у вас есть контейнер, работающий с изображением, но контейнер отличается от изображения, которое вы использовали для его создания. Но вы можете захотеть повторно использовать этот контейнер Node.js в качестве основы для новых изображений позже.
Затем зафиксируйте изменения в новом экземпляре образа Docker, используя следующую команду.
- docker commit -m "Что вы сделали с образом" -a "Имя автора" container_id repository / new_image_name
Переключатель -m предназначен для сообщения фиксации, которое помогает вам и другим пользователям узнать, какие изменения вы внесли, а -a используется для указания автора. container_id
— это тот, который вы отметили ранее в руководстве, когда запускали интерактивный сеанс Docker. Если вы не создали дополнительные репозитории в Docker Hub, репозиторий
обычно является вашим именем пользователя Docker Hub.
Например, для пользователя sammy с идентификатором контейнера d9b100f2f636
команда будет выглядеть так:
- docker commit -m "добавлен Node.js" -a "sammy" d9b100f2f636 sammy / ubuntu-nodejs
Когда вы фиксируете изображения, новый образ сохраняется локально на вашем компьютере.Позже в этом руководстве вы узнаете, как отправить образ в реестр Docker, например Docker Hub, чтобы другие могли получить к нему доступ.
Повторное перечисление образов Docker покажет как новый образ, так и старый, от которого он был получен:
Вы увидите следующий результат:
Выход
РЕПОЗИТОРНЫЙ ТЕГ ИДЕНТИФИКАТОР ИЗОБРАЖЕНИЯ СОЗДАННЫЙ РАЗМЕР
sammy / ubuntu-nodejs последнее 7c1f35226ca6 7 секунд назад 179 МБ
ubuntu latest 113a43faa138 4 недели назад 81.2 МБ
hello-world последнее e38bc07ac18e 2 месяца назад 1.85kB
В этом примере ubuntu-nodejs
— это новый образ, полученный из существующего образа ubuntu
из Docker Hub. Разница в размерах отражает внесенные изменения. И в этом примере изменение заключалось в том, что был установлен NodeJS. Поэтому в следующий раз, когда вам нужно будет запустить контейнер с использованием Ubuntu с предустановленным NodeJS, вы можете просто использовать новый образ.
Вы также можете создавать образы из Dockerfile
, что позволяет автоматизировать установку программного обеспечения в новый образ.Однако это выходит за рамки данного руководства.
Теперь давайте поделимся новым изображением с другими, чтобы они могли создавать из него контейнеры.
Шаг 8 — Отправка образов Docker в репозиторий Docker
Следующим логическим шагом после создания нового образа из существующего является предоставление доступа к нему избранным вашим друзьям, всему миру в Docker Hub или в другом реестре Docker, к которому у вас есть доступ. Чтобы отправить образ в Docker Hub или любой другой реестр Docker, у вас должна быть там учетная запись.
В этом разделе показано, как отправить образ Docker в Docker Hub. Чтобы узнать, как создать собственный частный реестр Docker, ознакомьтесь с разделом «Как настроить частный реестр Docker в Ubuntu 14.04».
Чтобы отправить свой образ, сначала войдите в Docker Hub.
- docker login -u имя-пользователя-docker-реестра
Вам будет предложено пройти аутентификацию с использованием пароля Docker Hub. Если вы указали правильный пароль, аутентификация должна пройти успешно.
Примечание: Если ваше имя пользователя в реестре Docker отличается от локального имени пользователя, которое вы использовали для создания образа, вам придется пометить свой образ своим именем пользователя в реестре. Для примера, приведенного на последнем шаге, вы должны ввести:
- тег docker sammy / ubuntu-nodejs docker-registry-username / ubuntu-nodejs
Затем вы можете отправить свое собственное изображение, используя:
- docker push имя-пользователя-реестра-докера / имя-образа-докера
Чтобы отправить образ ubuntu-nodejs
в репозиторий sammy , введите команду:
- docker push sammy / ubuntu-nodejs
Процесс может занять некоторое время, поскольку он загружает изображения, но когда он будет завершен, результат будет выглядеть следующим образом:
Выходные данные
Push ссылается на репозиторий [docker.io / sammy / ubuntu-nodejs]
e3fbbfb44187: нажата
5f70bf18a086: Толкнул
a3b5c80a4eba: нажата
7f18b442972b: нажата
3ce512daaf78: нажата
7aae4540b42d: нажата
...
После отправки образа в реестр он должен появиться на панели управления вашей учетной записи, как показано на изображении ниже.
Если попытка отправки приводит к ошибке такого рода, вероятно, вы не вошли в систему:
Выходные данные
Отправка относится к репозиторию [docker.io/sammy/ubuntu-nodejs]
e3fbbfb44187: Подготовка
5f70bf18a086: Подготовка
a3b5c80a4eba: Подготовка
7f18b442972b: Подготовка
3ce512daaf78: Подготовка
7aae4540b42d: Ожидание
unauthorized: требуется аутентификация
Войдите, используя docker login
и повторите попытку push.Затем убедитесь, что он существует на странице репозитория Docker Hub.
Теперь вы можете использовать docker pull sammy / ubuntu-nodejs
, чтобы вытащить образ на новый компьютер и использовать его для запуска нового контейнера.
Заключение
В этом руководстве вы установили Docker, работали с образами и контейнерами и отправили измененный образ в Docker Hub. Теперь, когда вы знаете основы, изучите другие руководства по Docker в сообществе DigitalOcean.
Как установить и использовать Docker в Debian 9
Docker — это платформа для контейнеризации, которая позволяет быстро создавать, тестировать и развертывать приложения в виде переносимых самодостаточных контейнеров, которые могут работать практически где угодно.
Docker де-факто является стандартом для контейнерных технологий и является важным инструментом для инженеров DevOps и их конвейеров непрерывной интеграции и доставки.
В этом руководстве мы проведем вас через процесс установки Docker на машину Debian 9 и изучим основные концепции и команды Docker.
Предварительные требования #
Прежде чем продолжить изучение этого руководства, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo.
. Все команды в этом руководстве следует запускать от имени пользователя без полномочий root.
Установка Docker в Debian #
Следующие шаги описывают, как установить последнюю стабильную версию Docker из репозиториев Docker.
Обновите установленные пакеты до последней версии:
sudo apt update
sudo apt upgrade
Установите зависимости, необходимые для добавления нового репозитория
через HTTPS:sudo apt install apt-transport-https ca-сертификаты curl software-properties-common gnupg2
Импортируйте GPG-ключ репозитория с помощью следующей команды
curl
:curl -fsSL https: // скачать.docker.com/linux/debian/gpg | sudo apt-key add -
Добавить репозиторий Docker APT
в список репозиториев программного обеспечения вашей системы, набрав:sudo add-apt-repository "deb [arch = amd64] https://download.docker.com/linux/debian $ (lsb_release -cs) stable"
$ (lsb_release -cs)
вернет имя дистрибутива Debian, в этом случае будет возвращеноstretch
.Теперь, когда репозиторий Docker включен, обновите список пакетов
apt
и установите последнюю версию Docker CE (Community Edition) с помощью:sudo apt update
sudo apt install docker-ce
После завершения установки служба Docker запустится автоматически.Вы можете проверить это, набрав:
sudo systemctl status docker
● docker.service - Docker Application Container Engine. Загружено: загружено (/lib/systemd/system/docker.service; включено; предустановка поставщика: включено) Активен: активен (работает) с Пт 2018-07-27 17:02:07 UTC; 1мин 14с назад Документы: https://docs.docker.com Основной PID: 16929 (dockerd) CGroup: /system.slice/docker.service
На момент написания текущая версия Docker, доступная для Debian 9, —
18.06.0-в.э.
. Проверьте версию Docker с помощью:docker -v
Docker version 18.06.0-ce, build 0ffa825
Выполнение команды Docker без Sudo #
По умолчанию только пользователь с правами администратора может выполнять команды Docker.
Если вы хотите запускать команды Docker от имени пользователя без полномочий root без добавления sudo
вам нужно будет добавить своего пользователя в группу докеров, которая создается во время установки пакета Docker CE.Вы можете сделать это, набрав:
sudo usermod -aG docker $ USER
$ USER
— это переменная среды.
который содержит ваше имя пользователя.
Выйдите из системы и войдите снова, чтобы обновить членство в группе.
Чтобы убедиться, что вы можете запускать команды докера без добавления sudo
, запустите следующую команду, которая загрузит тестовое изображение, запустит его в контейнере, напечатает сообщение «Привет из Docker» и выйдет:
контейнер докера run hello -world
Результат должен выглядеть следующим образом:
Интерфейс командной строки Docker #
Теперь, когда у нас установлен Docker, давайте рассмотрим базовый синтаксис интерфейса командной строки docker:
docker [option] [subcommand] [аргументы]
Чтобы вывести список всех доступных команд, запустите docker
без параметров:
docker
Если вам нужна дополнительная помощь по любой [подкоманде]
, вы можете использовать переключатель --help
в качестве показано ниже:
docker [подкоманда] --help
Образы Docker #
Образ Docker состоит из серии уровней файловой системы, представляющих инструкции в D образа. ockerfile
которые составляют исполняемое программное приложение.Изображение — это неизменяемый двоичный файл, включающий приложение и все другие зависимости, такие как библиотеки, двоичные файлы и инструкции, необходимые для запуска приложения.
Образ Docker можно рассматривать как снимок контейнера Docker.
Большинство образов Docker доступны в Docker Hub.
Docker Hub — это облачная служба реестра, которая, среди прочего, используется для хранения образов Docker в общедоступном или частном репозитории.
Search Docker Image #
Для поиска образа в реестре Docker Hub используйте подкоманду search
.
Например, чтобы найти образ Debian, введите:
docker search debian
Результат должен выглядеть следующим образом:
Как вы можете видеть, результаты поиска выводят таблицу с пятью столбцами, NAME
, ОПИСАНИЕ
, ЗВЕЗД
, ОФИЦИАЛЬНЫЙ
и АВТОМАТИЧЕСКИЙ
.
Официальный образ — это образ, который Docker разрабатывает совместно с партнерами по разработке.
Большинство образов Docker в Docker Hub помечены номерами версий.Если тег не указан, Docker извлечет последний образ.
Загрузить образ Docker #
Если мы хотим загрузить официальную сборку образа Debian, мы можем сделать это с помощью подкоманды image pull
:
docker image pull debian
В зависимости от скорости вашего Интернета, загрузка может занять несколько секунд или несколько минут.
Поскольку мы не указали тег, docker загрузит последний образ Debian, то есть 9.5. Если вы хотите загрузить некоторые из предыдущих версий Debian
, скажем, Debian 8, тогда вам нужно использовать docker image pull debian: 8
После загрузки образа мы можем перечислить образы, набрав:
docker image ls
Результат будет выглядеть примерно так:
Удалить образ Docker #
Если по какой-то причине вы хотите удалить образ, вы можете сделать это с помощью подкоманды image rm [image_name]
:
docker image rm debian
Docker Containers #
Экземпляр изображения называется контейнером.Контейнер представляет среду выполнения для отдельного приложения, процесса или службы.
Возможно, это не самое подходящее сравнение, но если вы программист, вы можете думать об образе Docker как о классе и контейнере Docker как об экземпляре класса.
Мы можем запускать, останавливать, удалять и управлять контейнером с помощью подкоманды docker container
.
Запустить контейнер Docker #
Следующая команда запустит контейнер Docker.
на основе образа Debian.Если у вас нет образа локально, сначала он будет загружен:
docker container run debian
На первый взгляд вам может показаться, что вообще ничего не произошло. Что ж, это неправда. Контейнер Debian останавливается сразу после загрузки, потому что у него нет длительного процесса, и мы не предоставили никакой команды, поэтому контейнер загрузился, выполнил пустую команду и затем завершил работу.
Переключатель -it
позволяет нам взаимодействовать с контейнером через командную строку.Чтобы запустить интерактивный контейнер, введите:
docker container run -it debian / bin / bash
root @ ee86c8c81b3b: / #
Как видно из выходных данных выше, после запуска контейнера командная строка изменяется, что означает, что теперь вы работаете изнутри контейнера.
.
Список контейнеров Docker #
Список запущенных контейнеров
, введите:
docker container ls
Если у вас нет запущенных контейнеров, вывод будет пустым.
Чтобы просмотреть все контейнеры, передайте переключатель -a
:
docker container ls -a
Удалить контейнеры Docker #
Чтобы удалить один или несколько контейнеров, просто скопируйте идентификатор контейнера (или идентификаторы) и вставьте их после подкоманды container rm
:
docker container rm c55680af670c
Заключение #
Вы узнали, как установить Docker на свой компьютер Debian 9 и как загружать образы Docker и управлять контейнерами Docker.Этот учебник едва затрагивает экосистему Docker. В некоторых из наших следующих статей мы продолжим углубляться в другие аспекты Docker.
Вам также следует ознакомиться с официальной документацией Docker.
.
Если у вас есть вопросы, оставьте комментарий ниже.
Как установить Docker в Debian 9 (Stretch) — TecAdmin
Docker — это контейнерная платформа приложений, которая обертывает конкретное приложение со всеми его зависимостями в контейнер.Контейнеры Docker можно легко отправить в удаленное место при запуске, не выполняя полную настройку приложения. Это руководство поможет вам установить Docker на Debian 9 Stretch.
Шаг 1. Предварительные требования
Самый первый шаг — удалить все пакеты Docker по умолчанию из системы перед установкой Docker на Linux VPS. Выполняйте команды для удаления ненужных версий Docker.
sudo apt-get purge docker lxc-docker docker-engine docker.io
Теперь установите некоторые пакеты, необходимые для установки Docker в системе Debian.Выполните следующие команды, чтобы сделать это:
sudo apt-get install apt-transport-https ca-сертификаты curl gnupg2 software-properties-common
Шаг 2. Настройка репозитория Docker
Теперь импортируйте официальный ключ GPG докеров, чтобы проверить подпись пакетов перед их установкой с помощью apt-get. Выполните приведенную ниже команду на терминале.
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key добавить -
После этого добавьте репозиторий Docker в вашу систему Debian, который содержит пакеты Docker, включая его зависимости.Вам необходимо включить этот репозиторий для установки Docker в Debian.
sudo add-apt-repository "deb [arch = amd64] https://download.docker.com/linux/debian stretch stable"
Шаг 3. Установите Docker в Debian 9
Теперь ваша система готова к установке Docker. Выполните следующие команды, чтобы обновить индекс APT, а затем установите версию сообщества Docker в Debian.
sudo apt-get update sudo apt-get install docker-ce
После успешной установки версии сообщества Docker служба запустится автоматически. Используйте команду ниже, чтобы проверить состояние службы.Докер состояния sudo systemctl
Теперь ваша система готова к запуску контейнеров Docker. Используйте наше руководство по Docker для начинающих по работе с Docker.
Шаг 4. Как использовать Docker
После установки Docker в Linux. Вот некоторые основные сведения о поиске и загрузке образов Docker, запуске контейнеров и управлении ими.
Поиск образов Docker
В первую очередь поиск образов контейнеров Docker из концентратора Docker. Например, приведенная ниже команда будет искать все изображения с помощью Debian и выводить их в списке.
поиск докеров Debian
Загрузите образы Docker
Теперь загрузите контейнер Docker с именем debian в локальную систему, используя следующие команды.
docker pull debian Использование тега по умолчанию: последний последнее: получение из библиотеки / debian 55cbf04beb70: Вытягивание завершено Дайджест: sha256: f1f61086ea01a72b30c7287adee8c929e569853de03b7c462a8ac75e0d0224c4 Статус: загружен новый образ для debian: последний
Теперь убедитесь, что вышеуказанные изображения были успешно загружены в вашу систему.Ниже команда перечисляет все изображения.
образа докеров РЕПОЗИТОРНЫЙ ТЕГ ИДЕНТИФИКАТОР ИЗОБРАЖЕНИЯ СОЗДАННЫЙ РАЗМЕР debian latest 3bbb526d2608 4 недели назад 101MB
Запустить новый контейнер с образом
Наконец, запустите контейнер Docker, используя загруженный выше образ в вашей системе. Команда ниже запустит новый контейнер и предоставит вам доступ к этому контейнеру с помощью оболочки / bin / bash.
docker run -i -t debian / bin / bash
Для выхода из док-контейнера введите CTRL + P + Q .Это оставит контейнер работать в фоновом режиме и предоставит вам системную консоль хоста. Если вы использовали команду выхода, она остановит текущий контейнер.
После выхода из контейнера Docker выполните команду ниже, чтобы вывести список всех запущенных контейнеров.
докер пс КОНТЕЙНЕР ИДЕНТИФИКАЦИЯ ИЗОБРАЖЕНИЕ КОМАНДА СОЗДАНО СОСТОЯНИЕ НАЗВАНИЯ ПОРТОВ f2582758af13 debian "/ bin / bash" 2 часа назад Вверх 2 часа first_debian
По умолчанию команда «Выше» выводит список только работающих контейнеров.Чтобы вывести список всех контейнеров (включая остановленный), используйте следующую команду.
докер ps -a
Пуск / Стоп / Присоединение контейнера
Вы можете запускать, останавливать или присоединяться к любым контейнерам с помощью следующих команд. Чтобы запустить контейнер, используйте следующую команду.
запуск докера
Чтобы остановить контейнер, используйте следующую команду.
остановка докера
Чтобы подключиться к работающему в данный момент контейнеру, используйте следующую команду.
присоединение докера
Установить Docker на Debian 9
Docker — это система контейнеризации, подобная LXC, для виртуализации операционных систем Linux с использованием того же ядра, что и операционная система хоста. Контейнеры быстрые и легкие. Для работы им не нужно много места на диске или оперативной памяти.
В репозитории Docker есть готовые образы почти для всего, что вы можете делать. Например, если вам нужно разработать веб-сайт на PHP, вы можете загрузить образ Docker PHP и начать разработку.Вам не нужно загружать и настраивать все пакеты один за другим, как в обычной системе Linux. Вот почему он широко используется разработчиками программного обеспечения во всем мире.
В этой статье я покажу вам, как установить и использовать Docker CE в Debian 9 Stretch. Давайте начнем.
Установка Docker
Docker Community Edition или Docker CE недоступен в официальном репозитории пакетов Debian 9 Stretch. Но его легко установить из официального репозитория пакетов Docker.Сначала обновите кеш репозитория пакетов apt с помощью следующей команды:
Кэш репозитория пакетов apt должен быть обновлен.
Теперь выполните следующую команду, чтобы установить пакеты, необходимые для установки Docker CE :
$ sudo apt-get install apt-transport-https ca-сертификаты curl gnupg
software-properties-common
Теперь нажмите y , а затем нажмите
Теперь добавьте ключ GPG официального репозитория Docker с помощью следующей команды:
$ curl -fsSL https: // скачать.docker.com/linux/debian/gpg | sudo apt-key добавить —
Должен быть добавлен ключ GPG официального репозитория Docker.
Теперь добавьте официальный репозиторий Docker CE с помощью следующей команды:
$ sudo add-apt-repository «deb [arch = amd64] https://download.docker.com/linux/debian
$ (lsb_release -cs) стабильный»
Теперь снова обновите кеш репозитория пакетов apt с помощью следующей команды:
Кэш репозитория пакетов apt должен быть обновлен.
Теперь установите Docker CE с помощью следующей команды:
$ sudo apt-get install docker-ce
Нажмите y , а затем нажмите
Должен быть установлен Docker CE .
Теперь проверьте, запущена ли служба docker с помощью следующей команды:
$ sudo systemctl статус докера
Как видно на скриншоте ниже, служба docker запущена.
Если он не запущен, вы можете запустить службу docker с помощью следующей команды:
$ sudo systemctl start docker
Также добавьте службу docker при запуске системы с помощью следующей команды, чтобы она запускалась при загрузке вашего компьютера.
$ sudo systemctl включить докер
Как видите, в автозагрузку системы добавлен сервис docker .
Теперь проверьте, работает ли Docker CE с помощью следующей команды:
Как видно из скриншота ниже, Docker CE работает правильно.
Теперь, когда Docker CE установлен и работает правильно, в следующем разделе я покажу вам, как использовать Docker CE .
Поиск образов Docker в репозитории образов Docker
Как и репозиторий пакетов Debian, Docker также имеет репозиторий образов, в котором размещаются все образы Docker. Вы можете искать изображения в репозитории образов Docker и загружать те, которые вам нужны.
Чтобы найти образ Docker, скажем, alpine Linux Docker image, выполните следующую команду:
$ sudo docker search «alpine»
Должен отобразиться результат поиска, как вы можете видеть на скриншоте ниже.Отмеченный столбец — это имя образа Docker. Это то, что вы используете для загрузки этого конкретного образа Docker. Я собираюсь установить первый образ Docker alpine .
Загрузка и вывод образов Docker
Теперь, чтобы загрузить образ Docker alpine из предыдущего раздела, выполните следующую команду:
$ sudo docker pull альпийский
Образ Docker alpine загружен.
Вы можете вывести список образов Docker, доступных на вашем компьютере, с помощью следующей команды:
Как видно из отмеченного раздела на скриншоте ниже, в списке указан только что скачанный мной образ alpine .Здесь вы также можете найти такую информацию, как Image ID , SIZE .
Создание контейнера Docker
В этом разделе я покажу вам, как создать контейнер Docker.
Вы можете создать Docker-контейнер образа Docker alpine с помощью следующей команды:
Если вы хотите создать контейнер образа Docker alpine и одновременно войти в оболочку контейнера, выполните следующую команду:
$ sudo docker run -it альпийский
Как видно на скриншоте ниже, вы вошли в оболочку контейнера.
Здесь вы можете запустить любую команду.
Когда вы закончите работу с контейнером, выполните следующую команду, чтобы выйти из него.
Вы также можете запустить команду и создать контейнер, например:
$ sudo docker run alpine echo «Hello World»
Список контейнеров Docker
Вы можете получить список всех запущенных контейнеров Docker с помощью следующей команды:
Как видно на скриншоте ниже, только контейнер 6f2488135966 , который является контейнером alpine , выполняет команду sleep 1000 .
Вы можете получить список всех запущенных и не запущенных контейнеров Docker с помощью следующей команды:
Это все контейнеры, которые я создал, как вы можете видеть на скриншоте ниже.
Запуск остановленного контейнера
Вы можете запустить остановленный контейнер и повторно запустить его с помощью той же команды, что и при его создании:
$ sudo docker start -i CONTAINER_NAME
или
$ sudo docker start -i CONTAINER_ID
ПРИМЕЧАНИЕ. CONTAINER_ID и CONTAINER_NAME можно найти с помощью команды sudo docker ps -a , как указано выше.
Например,
$ sudo docker start -i 97663a84f96c
Присоединение работающего контейнера
Вы можете войти в оболочку запущенного контейнера Docker, если вы вышли из него, следующим образом:
$ sudo docker attach CONTAINER_ID
или
$ sudo docker attach CONTAINER_NAME
Например:
$ sudo docker attach 6452e4e4890c
Вот как вы устанавливаете и используете Docker в Debian 9 Stretch.Спасибо, что прочитали эту статью.
Как установить Docker на Debian 9
В этой статье мы будем устанавливать и настраивать Docker на Debian 9 VPS.
Docker — это приложение с открытым исходным кодом, которое обеспечивает легкую виртуализацию на уровне операционной системы за счет использования контейнеров. Он специально разработан для повышения продуктивности большинства ИТ-операций за счет упрощения использования виртуализации. Контейнеры, по сути, представляют собой набор программных пакетов, которые работают как одно приложение, изолированное от других приложений.Разработчики, системные администраторы и т.п. пользуются этой функцией, создавая контейнеры, в которых они могут создавать, развертывать и запускать приложения без необходимости создавать еще одну виртуальную машину, что значительно влияет на производительность и стоимость.
Вот основные причины, по которым организации и предприятия используют Docker :
- Повышение продуктивности разработчика
- Повышенная скорость развертывания
- Повышение эффективности ИТ-операций
- Более быстрое решение проблем, которые могут возникнуть
- Снижение стоимости ИТ-инфраструктуры
Doc ker в настоящее время разрабатывается и поддерживается Docker Inc.и написан с использованием основного языка программирования Go. Он находится под лицензией Apache License 2.0. На момент написания последней стабильной версии Docker является 18.09.5 .
В настоящее время существует две версии Docker :
- Docker CE — Community Edition — программное обеспечение с открытым исходным кодом, поддерживаемое сообществом и Docker Inc.
- Docker EE — Enterprise Edition — сертифицировано и поддерживается Docker Inc.
Приступим к установке Docker.
Предварительные требования
В этом руководстве мы будем использовать одну из наших управляемых служб Debian VPS. Прежде чем продолжить, убедитесь, что на вашем сервере включена учетная запись root или пользователь с привилегиями sudo.
Аппаратные ресурсы, необходимые для оптимального запуска Docker, обычно зависят от количества контейнеров и платформ внутри контейнера. Это означает, что требования к оборудованию по-прежнему зависят от приложения, в котором будут работать контейнеры, а количество активных контейнеров зависит исключительно от оборудования, на котором оно работает.
Шаг 1. Войдите в систему и обновите ее
Чтобы начать установку Docker, нам сначала нужно войти на наш сервер через SSH:
ssh [имя пользователя] @ [server_ip_address] -p [порт SSH]
Измените параметры [имя пользователя]
, [IP-адрес_сервера]
и [порт SSH]
на основе сведений о вашем сервере. Для установки Docker рекомендуется использовать учетную запись «root».
Перед началом установки мы рекомендуем обновить все установленные пакеты до последних версий, что помогает обеспечить максимальную совместимость при установке нового программного обеспечения.Вы можете сделать это, выполнив следующую команду:
apt-get обновление APT-получить обновление
Шаг 2: Установите необходимые пакеты
Рекомендуется установить общие библиотеки Linux вместе с этими зависимостями, чтобы избежать потери каких-либо необходимых пакетов в процессе установки.
apt-get install -y apt-transport-https ca-Certificates curl gnupg2 software-properties-common build-essential
Шаг 3. Настройка репозитория Docker
В настоящее время есть три способа установить Docker в нашей системе: через официальный репозиторий Docker, из Debian (.deb) и из сценария, созданного разработчиками Docker. Также у Docker есть три канала обновления — стабильное, тестовое и ночное.
- Stable — предоставляет последнюю стабильную версию Docker.
- Test — предоставляет предварительные версии для тестирования.
- Nightly — предоставляет самую последнюю возможную сборку. Обычно это нестабильно.
Для этого руководства мы установим Docker Community Edition (CE), используя их официальный репозиторий.Это рекомендуемый метод установки как для среды разработки, так и для производственной среды, поскольку мы можем выбрать канал обновления, по которому затем можно будет легко обновить сам пакет.
Чтобы добавить репозиторий Docker на наш сервер, нам нужно сначала добавить ключи GPG с помощью следующих команд:
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key добавить -
После добавления добавьте репозиторий, указывающий на «стабильный» канал обновления.
add-apt-repository "deb [arch = amd64] https: // download.docker.com/linux/debian $ (lsb_release -cs) стабильный "
Теперь мы можем обновить наши пакеты, которые должны включать репозиторий из Docker.
apt-get update
После применения команды вы должны увидеть добавленную ссылку на репозиторий:
Получить: 5 https://download.docker.com/linux/debian stretch InRelease [44,8 kB] Получите: 7 https://download.docker.com/linux/debian stretch / стабильные пакеты amd64 [8 437 Б]
Шаг 4: Установка Docker CE
После настройки репозитория теперь мы можем установить Docker CE, а также Docker CLI, выполнив следующую команду:
apt-get install -y docker-ce docker-ce-cli
Это может занять некоторое время, так как также будут установлены все необходимые дополнительные библиотеки.
После завершения установки убедитесь, что служба Docker запущена, набрав:
Докер состояния
systemctl
Вы должны увидеть аналогичный результат со словом «активен (работает)»:
Вы также можете проверить и проверить версию Docker, используя:
докер -v
Наконец, убедитесь, что служба докеров запускается при загрузке:
systemctl включить докер
Шаг 5: Настройка Docker CE
Чтобы иметь возможность запускать команды докеров, используемый пользователь должен иметь привилегии root.Если вам нужен пользователь без полномочий root, чтобы иметь возможность запускать команды Docker CLI, выполните следующие необязательные шаги:
Сначала создайте группу докеров
:
группа добавить докер
Затем назначьте пользователя в группу с помощью команды usermod
. Измените переменную [пользователь]
соответственно:
usermod -aG docker [пользователь]
Наконец, чтобы протестировать эту новую конфигурацию, выйдите из системы и войдите в систему как назначенный пользователь. Теперь вы должны иметь возможность запускать команду docker без использования sudo
.
Шаг 6: Тестирование Docker CE
Давайте теперь проверим, можем ли мы запускать контейнеры Docker. Мы можем попробовать запустить готовый образец контейнера, классический «Hello World».
docker run привет-мир
Вы должны увидеть то же сообщение, которое показывает технические шаги того, что делается в фоновом режиме после выполнения команды.
Вот и все! — Теперь у вас есть работающая установка Docker, работающая на Debian 9.
Конечно, вам не нужно устанавливать Docker на Ubuntu 9 , если у вас есть Debian VPS.Вы можете просто попросить нашу службу поддержки установить для вас Docker на Debian 9. Они доступны 24/7 и смогут помочь вам с установкой. Вы также можете обратиться к нашему сообщению о том, как установить Docker на Debian 10.
ПС . Если вам понравилось читать это сообщение в блоге о том, как установить Docker на Debian 9, не стесняйтесь поделиться им в социальных сетях, используя ярлыки ниже, или просто оставьте комментарий в разделе комментариев. Спасибо.
Как установить Docker Compose в Debian 9
Docker — это приложение с открытым исходным кодом, которое обеспечивает легкую виртуализацию на уровне операционной системы за счет использования контейнеров.Ключевым преимуществом Docker является то, что он позволяет пользователям упаковать приложение со всеми его зависимостями в стандартизированный модуль для разработки программного обеспечения.
Docker Engine доступен в версиях Community Edition (CE) и Enterprise Edition (EE). В этом руководстве мы выполним установку Docker Community Edition на Debian 9.
.
Требования
- В этом руководстве мы будем использовать сервер Debian 9.
- Также требуется полный root-доступ по SSH или пользователь с привилегиями sudo.
Шаг 1. Подключение через SSH
Подключитесь к серверу через SSH как пользователь root, используя следующую команду:
корень ssh @ IP_АДРЕС -p PORT_NUMBER
Не забудьте заменить «IP_ADDRESS» и «PORT_NUMBER» на ваш фактический IP-адрес сервера и номер порта SSH. Замените «root» своим именем пользователя администратора, если вы не планируете использовать учетную запись root.
Перед началом установки нам необходимо обновить пакеты ОС до последних версий.
Мы можем сделать это, выполнив следующие команды:
$ apt-get update $ apt-get upgrade
После завершения обновления мы можем перейти к следующему шагу.
Шаг 2: Установите пакеты зависимостей
Начните установку, убедившись, что установлены все пакеты, используемые докером в качестве зависимостей.
apt-get install -y apt-transport-https ca-Certificates curl gnupg2 software-properties-common build-essential
Шаг 3. Настройка репозитория Docker
Чтобы добавить репозиторий Docker на наш сервер, нам нужно сначала добавить ключи GPG с помощью следующих команд:
curl -fsSL https: // скачать.docker.com/linux/debian/gpg | sudo apt-key добавить -
После добавления добавьте репозиторий, указывающий на «стабильный» канал обновления.
add-apt-repository "deb [arch = amd64] https://download.docker.com/linux/debian $ (lsb_release -cs) стабильный"
Теперь мы можем обновить наши пакеты, которые должны включать репозиторий из Docker.
apt-get update
После применения команды вы должны увидеть добавленную ссылку на репозиторий:
Получить: 5 https: //download.docker.com / linux / debian stretch InRelease [44,8 КБ] Получите: 7 https://download.docker.com/linux/debian stretch / стабильные пакеты amd64 [8 437 Б]
Шаг 4: Установка Docker CE
После настройки репозитория теперь мы можем установить Docker CE, а также Docker CLI, выполнив следующую команду:
apt-get install -y docker-ce docker-ce-cli
Это может занять некоторое время, так как также будут установлены все необходимые дополнительные библиотеки.
После завершения установки убедитесь, что служба Docker запущена, набрав:
Докер состояния
systemctl
Выход:
докер.сервис - Docker Application Container Engine Загружено: загружено (/lib/systemd/system/docker.service; включено; предустановка поставщика: включено) Активен: активен (работает) с Sun 2019-07-14 03:40:16 EDT; 38с назад Документы: https://docs.docker.com Основной PID: 4434 (dockerd) CGroup: /system.slice/docker.service └─4434 / usr / bin / dockerd -H fd: // --containerd = / run / containerd / containerd.sock
Вы также можете проверить и проверить версию Docker, используя:
докер -v
Выход:
Docker версии 18.09.7, сборка 2d0083d
Наконец, убедитесь, что служба докеров запускается при загрузке:
systemctl включить докер
Докер
Группа создана, но пользователи не добавлены. Добавьте обычного пользователя в группу для выполнения команд докеров от имени непривилегированного пользователя.
sudo usermod -aG docker $ USER
Шаг 5: Тестирование Docker CE
Давайте теперь проверим, можем ли мы запускать контейнеры Docker. Вы можете протестировать установку Docker, запустив классический «Hello World».
$ docker run привет-мир Привет из Докера. Это сообщение показывает, что ваша установка работает правильно. ...
Вы можете использовать docker images
a command, чтобы увидеть список всех образов в вашей системе.
РЕПОЗИТОРНАЯ БИРКА ИДЕНТИФИКАТОР ИЗОБРАЖЕНИЯ РАЗМЕР СОЗДАНИЯ hello-world latest fce289e99eb9 6 месяцев назад 1.84kB
Команда docker ps
показывает все запущенные в данный момент контейнеры.
КОНТЕЙНЕР ИДЕНТИФИКАЦИЯ ИЗОБРАЖЕНИЕ КОМАНДА СОЗДАЕТ СОСТОЯНИЕ ИМЕНА ПОРТОВ
Поскольку ни один контейнер не запущен, мы видим пустую строку. Попробуем более полезный вариант: docker ps -a
КОНТЕЙНЕР ИДЕНТИФИКАЦИЯ ИЗОБРАЖЕНИЕ КОМАНДА СОЗДАНО СОСТОЯНИЕ НАЗВАНИЯ ПОРТОВ 1a35446 hello-world "/ hello" 24 минуты назад Завершился (0) 24 минуты назад amazing_bassiНа протяжении всего этого руководства вы будете запускаться несколько раз, и оставление случайных контейнеров займет место на диске.Следовательно, как правило, я очищаю контейнеры после того, как закончу с ними. Для этого вы можете запустить команду
docker rm
. Просто скопируйте идентификаторы контейнеров сверху и вставьте их вместе с командой.докер rm 1a35446 1a35446В более поздних версиях Docker для достижения того же эффекта можно использовать команду
docker container prune
.$ чернослив в докер-контейнере ПРЕДУПРЕЖДЕНИЕ! Это удалит все остановленные контейнеры. Вы уверены что хотите продолжить? [г / н] гЕсли вы хотите увидеть параметры, доступные для конкретной команды, выполните следующую команду:
Докер
- справкаРезультат должен быть примерно таким:
Вот и все! Docker CE успешно установлен на ваш сервер Debian 9.
Конечно, ничего из этого делать не нужно, если на ваш сервер распространяется наша управляемая служба поддержки Linux. В этом случае вы можете просто попросить наших опытных администраторов Linux установить Docker CE на ваш сервер.