🐳 Топ самых важных команд Docker

by itisgood

В этом руководстве мы изучим 17 самых важных команд Docker, которые мы обычно используем в среде Docker.

Это основные команды Docker, необходимые для начала работы с контейнерами и образами Docker.

Найти версию Docker

Давайте проверим версию Docker, установленную на машине.

docker -v

Вывод:

Docker version 19.03.1, build 74b1e89
Вы также можете использовать команду version, чтобы узнать о компонентах и версиях Docker.
docker version

Вывод:

Client: Docker Engine - Community
 Version:           19.03.1
 API version:       1.40
 Go version:        go1.12.5
 Git commit:        74b1e89
 Built:             Thu Jul 25 21:21:07 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.1
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.5
  Git commit:       74b1e89
  Built:            Thu Jul 25 21:19:36 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.6
  GitCommit:        894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc:
  Version:          1.0.0-rc8
  GitCommit:        425e105d5a03fabd737a126ad93d62a9eeede87f
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

Команда info выводит информацию о количестве контейнеров и образов вместе с информацией об операционной системе, версии ядра, процессоре, памяти и имени хоста.

docker info

Вывод:

Client:
 Debug Mode: false

Server:
 Containers: 0
  Running: 0
  Paused: 0
  Stopped: 0
 Images: 0
 Server Version: 19.03.1
 Storage Driver: overlay2
  Backing Filesystem: xfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 894b81a4b802e4eb2a91d1ce216b8817763c29fb
 runc version: 425e105d5a03fabd737a126ad93d62a9eeede87f
 init version: fec3683
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 3.10.0-957.21.3.el7.x86_64
 Operating System: CentOS Linux 7 (Core)
 OSType: linux
 Architecture: x86_64
 CPUs: 1
 Total Memory: 1.655GiB
 Name: centos
 ID: RZCG:TOSQ:RL7B:A7FF:ASDB:47GR:KN24:BRKF:KYHZ:5WVV:UTOZ:CDSX
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

Контейнеры Docker

Создать Docker контейнер

Хотя существует отдельная команда только для создания контейнеров, следующая команда также широко используется для создания и запуска контейнеров.
Для создания и запуска контейнера используется последний образ докера fedora.
docker run -dit --name docker-fedora --hostname="fedora" fedora /bin/bash
  • -d: запустить контейнер в фоновом режиме и вывестиь идентификатор контейнера
  • -i: запустить контейнер в интерактивном режиме
  • -t: выделяет терминал tty, который требуется для подключения к контейнеру
  • –Name: имя контейнера
  • –Hostname: установить хост для контейнера
Когда вы вводите команду, Docker локально ищет образ Fedora, и если он не найден, он начинает загрузку образа Fedora из официального реестра Docker Hub.
Как только образ был загружен, система запустит контейнер.
Unable to find image 'fedora:latest' locally
latest: Pulling from library/fedora
fd2e8b5b2254: Pull complete 
Digest: sha256:d39a02a0f13c1df3bbcb0ccea4021c53b8e0bfd87f701a5115e18ec089814e70
Status: Downloaded newer image for fedora:latest
8bba0f0ffe3a4553212da5c1bbdca0fac35a210c780f92d0df15fba0feec0a60
Вы также можете создать контейнер с определенным выпуском образа.
Например, чтобы создать контейнер Fedora 29, вы можете использовать fedora: 29 в качестве имени изображения.

Список Docker Контейнеров

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

docker ps
или
docker container list

Вывод:

CONTAINER ID        IMAGE               COMMAND             CREATED              STATUS              PORTS               NAMES
8bba0f0ffe3a        fedora              "/bin/bash"         About a minute ago   Up About a minute
Опция -a покажет все контейнеры, включая остановленные.

Доступ к Docker контейнерам

Команда attach позволяет получить доступ к работающему контейнеру (docker-fedora).
Вы можете увидеть, что имя хоста контейнера установлено как Fedora.
Также, запустите некоторые тестовые команды, такие как «df -hT», чтобы увидеть детали точек монтирования.
docker attach docker-fedora
или
docker container attach docker-fedora

Вывод:

[root@centos ~]# docker attach docker-fedora

[root@fedora /]# df -hT
Filesystem     Type     Size  Used Avail Use% Mounted on
overlay        overlay   10G  2.6G  7.5G  26% /
tmpfs          tmpfs     64M     0   64M   0% /dev
tmpfs          tmpfs    848M     0  848M   0% /sys/fs/cgroup
shm            tmpfs     64M     0   64M   0% /dev/shm
/dev/sda1      xfs       10G  2.6G  7.5G  26% /etc/hosts
tmpfs          tmpfs    848M     0  848M   0% /proc/acpi
tmpfs          tmpfs    848M     0  848M   0% /proc/scsi
tmpfs          tmpfs    848M     0  848M   0% /sys/firmware
Чтобы выйти из оболочки контейнера Docker, чтобы отсоединиться от контейнера, не останавливая его, нажмите CTRL + p, а затем CTRL + q.

Проверьте запущенный процесс в контейнере

Команда top показывает запущенный процесс и его детали.

docker top docker-fedora

или

docker container top docker-fedora

или

   PPID                C                   STIME               TTY                 TIME                CMD
   root                3724                3708                0                   07:51               pts/0               00:00:00            /bin/bash

Проверка статистики контейнера Docker

Команда stats выполняет прямую трансляцию статистики использования ресурсов контейнера.

Статистика будет похожа на команду top Linux.

docker stats docker-fedora

или

docker container stats docker-fedora

Вывод:

CONTAINER ID        NAME                CPU %               MEM USAGE / LIMIT   MEM %               NET I/O             BLOCK I/O           PIDS
8bba0f0ffe3a        docker-fedora       0.00%               620KiB / 1.655GiB   0.04%               656B / 0B           0B / 0B             1

Скопируйте файл / папку из Docker контейнера

Команда cp позволит вам копировать файлы / папки из контейнеров в хост-систему.

Следующая команда скопирует файл /root/tobecopied в /root хост-машины.

docker cp docker-fedora:/root/tobecopied /root/

или

docker container cp docker-fedora:/root/tobecopied /root/

Убить контейнер Docker

Команда kill отправляет сигнал SIGTERM для уничтожения работающего контейнера.

docker kill docker-fedora

или

docker container kill docker-fedora
Вы можете использовать команду docker ps -a для просмотра статуса контейнера.
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                       PORTS               NAMES
8bba0f0ffe3a        fedora              "/bin/bash"         11 minutes ago      Exited (137) 5 seconds ago

Запустить Docker Контейнер

Команда start позволяет запустить остановленный контейнер.

docker start docker-fedora

или

docker container start docker-fedora

Перезапуск Docker контейнера

Команда restart позволяет перезапустить контейнер.

docker restart docker-fedora

или

docker container restart docker-fedora

Остановит Docker контейнер

Команда stop поможет вам остановить контейнер:

docker stop docker-fedora

или

docker container stop docker-fedora

Переименовать Docker контейнер

Команда rename предоставляет возможность изменить имя контейнера, например из docker-fedora в MyFedora.

docker rename docker-fedora MyFedora

или

docker container rename docker-fedora MyFedora

Удалить Docker Контейнер

Команда rm поможет вам удалить контейнер.

Если контейнер работает, используйте -f, чтобы принудительно удалить его.

docker rm MyFedora

или

docker container rm MyFedora

Образы Docker

Поиск образов Docker

Команда search помогает вам найти образа Docker в реестре Docker, например WordPress:
docker search wordpress
Вывод:
NAME                                     DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
wordpress                                The WordPress rich content management system…   3066                [OK]                
bitnami/wordpress                        Bitnami Docker Image for WordPress              115                                     [OK]
tutum/wordpress                          Out-of-the-box WordPress docker image           35                                      
appcontainers/wordpress                  Centos/Debian Based Customizable WordPress C…   34                                      [OK]
aveltens/wordpress-backup                Easily backup and restore your WordPress blo…   16                                      [OK]
centurylink/wordpress                    WordPress image with MySQL removed.             14                                      [OK]
arm32v7/wordpress                        The WordPress rich content management system…   10                                      
appsvcorg/wordpress-alpine-php            This is a WordPress Docker image which can …   7                                       
dalareo/wordpress-ldap                   WordPress images with LDAP support automatic…   6                                       [OK]
bitnami/wordpress-nginx                  Bitnami Docker Image for WordPress with NGINX   6                                       [OK]
wodby/wordpress-php                      PHP for WordPress                               4                                       [OK]

Скачать образ Docker

Команда pull позволяет загружать образы Docker из реестра.
По умолчанию он загружается из публичного реестра Docker.
Но вы также можете настроить Docker для загрузки образов из вашего личного реестра.
docker pull wordpress

или

docker image pull bitnami/wordpress

Список образов Docker

Отобразить список доступных образов Docker в системе:

docker images

или

docker image list

Вывод:

REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
bitnami/wordpress   latest              da1f627a8dfd        2 days ago          417MB
wordpress           latest              02126202b6ea        6 days ago          502MB
fedora              latest              ef49352c9c21        10 days ago         246MB
centos              latest              9f38484d220f        5 months ago        202MB
fedora              29                  d09302f77cfc        5 months ago        275MB

Удалить образ Docker

Вы можете удалить образы с помощью команды rmi или rm

docker rmi wordpress

или

docker image rm wordpress

Вывод:

Untagged: wordpress:latest
Untagged: wordpress@sha256:fdecb6fc92b04d88419544722ac1679158c12eb8f519b83b0480a6375e823dec
Deleted: sha256:02126202b6ea3d070a0d2e9ded8ea7cc94073525fba5839204fed4f6de62a527
Deleted: sha256:006265425edfa4451bb0b69607ca56bf05576c5ee7dbfd5abe4382ab67175537
Deleted: sha256:fba7a866c3b6a68aacb937015533cc65fa563988e9b58258ff82c48554cfc609
Deleted: sha256:a8222cc6dc755223abf4af699ae1090020858fcaffd431b32a116c9c1cc0609d
Deleted: sha256:a310023bf66eb8e4118deafdf12c800a98d9a77932906d141839bad1963dd96b
Deleted: sha256:87b8b6fb7a45af0d8c4aec69d808a8d43c0e177e89284289f6a02da4aaa617a7
Deleted: sha256:119f74a6f3f65b1a989e6015579e6ada9916ac20128699bc63c20cf71b5fd8db
Deleted: sha256:8976d948286158c42b155e2ba9a9039a23005db8b67ca5471abaac20d54b7dd4

 

You may also like

Leave a Comment