Как использовать команду docker checkpoint rm для удаления контрольной точки

DockerDockerBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этой лабораторной работе вы научитесь управлять контрольными точками (checkpoints) Docker-контейнеров. Мы начнём с создания Docker-контейнера, а затем создадим контрольную точку его текущего состояния, что позволит сохранять и восстанавливать состояние контейнера.

После создания контрольной точки вы узнаете, как вывести список существующих контрольных точек для проверки их наличия. Наконец, вы попрактикуетесь в удалении конкретной контрольной точки с помощью команды docker checkpoint rm и убедитесь, что она была успешно удалена. Эта лабораторная работа предоставляет практический опыт работы с основными операциями контрольных точек Docker.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/ImageOperationsGroup(["Image Operations"]) docker/ContainerOperationsGroup -.-> docker/run("Run a Container") docker/ContainerOperationsGroup -.-> docker/ps("List Running Containers") docker/ContainerOperationsGroup -.-> docker/stop("Stop Container") docker/ContainerOperationsGroup -.-> docker/rm("Remove Container") docker/ImageOperationsGroup -.-> docker/pull("Pull Image from Repository") subgraph Lab Skills docker/run -.-> lab-555068{{"Как использовать команду docker checkpoint rm для удаления контрольной точки"}} docker/ps -.-> lab-555068{{"Как использовать команду docker checkpoint rm для удаления контрольной точки"}} docker/stop -.-> lab-555068{{"Как использовать команду docker checkpoint rm для удаления контрольной точки"}} docker/rm -.-> lab-555068{{"Как использовать команду docker checkpoint rm для удаления контрольной точки"}} docker/pull -.-> lab-555068{{"Как использовать команду docker checkpoint rm для удаления контрольной точки"}} end

Создание и создание контрольной точки контейнера

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

Сначала нам понадобится образ для запуска контейнера. Мы будем использовать образ ubuntu. Поскольку в среде LabEx VM не все образы предустановлены, сначала мы загрузим образ ubuntu.

docker pull ubuntu

Вы должны увидеть вывод, указывающий на загрузку образа ubuntu.

Using default tag: latest
latest: Pulling from library/ubuntu
...
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest

Теперь давайте запустим простой контейнер из образа ubuntu. Мы запустим его в фоновом режиме (-d) и дадим ему имя (--name checkpoint-test). Также мы запустим команду, которая будет поддерживать работу контейнера, например sleep infinity.

docker run -d --name checkpoint-test ubuntu sleep infinity

Вы должны увидеть длинную строку символов — это идентификатор контейнера.

<container_id>

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

docker ps

Вы должны увидеть контейнер checkpoint-test в списке со статусом Up.

CONTAINER ID   IMAGE     COMMAND           CREATED         STATUS         PORTS     NAMES
<container_id>   ubuntu    "sleep infinity"   X seconds ago   Up X seconds             checkpoint-test

Теперь, когда у нас есть работающий контейнер, мы можем создать контрольную точку его состояния. Мы используем команду docker checkpoint create, указав имя контейнера и имя контрольной точки. Назовём нашу контрольную точку my-checkpoint.

docker checkpoint create checkpoint-test my-checkpoint

Если команда выполнена успешно, вы не увидите вывода. Это означает, что контрольная точка была создана.

Просмотр существующих контрольных точек

На предыдущем шаге мы создали контрольную точку с именем my-checkpoint для контейнера checkpoint-test. В этом шаге мы научимся выводить список существующих контрольных точек для контейнера.

Для просмотра контрольных точек конкретного контейнера используется команда docker checkpoint ls с указанием имени контейнера.

docker checkpoint ls checkpoint-test

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

CHECKPOINT ID
my-checkpoint

Эта команда отображает все контрольные точки, созданные для указанного контейнера. Если бы было создано несколько контрольных точек, все они были бы перечислены здесь.

Удаление конкретной контрольной точки

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

Для удаления контрольной точки используется команда docker checkpoint rm, за которой следует имя контейнера и имя удаляемой контрольной точки. Мы удалим контрольную точку my-checkpoint из контейнера checkpoint-test.

docker checkpoint rm checkpoint-test my-checkpoint

При успешном выполнении команды вы не увидите никакого вывода. Это означает, что контрольная точка была удалена.

Удаление контрольной точки не влияет на работу контейнера. Контейнер продолжит работать в текущем состоянии.

Проверка удаления контрольной точки

На предыдущем шаге мы удалили контрольную точку my-checkpoint из контейнера checkpoint-test. В этом шаге мы проверим успешность удаления, снова выведя список контрольных точек.

Для проверки удаления контрольной точки используем команду docker checkpoint ls для контейнера checkpoint-test, как мы делали в Шаге 2.

docker checkpoint ls checkpoint-test

Теперь вы не должны увидеть никакого вывода или получите сообщение об отсутствии контрольных точек для этого контейнера. Это подтвердит, что контрольная точка my-checkpoint была удалена.

Если my-checkpoint всё ещё отображается в списке, вернитесь к предыдущему шагу и убедитесь, что правильно выполнили команду docker checkpoint rm.

После подтверждения удаления контрольной точки мы можем очистить созданный контейнер. Остановим и затем удалим контейнер checkpoint-test.

Сначала остановим контейнер:

docker stop checkpoint-test

В выводе вы должны увидеть имя контейнера.

checkpoint-test

Затем удалим контейнер:

docker rm checkpoint-test

Снова вы должны увидеть имя контейнера в выводе.

checkpoint-test

Теперь, если выполнить docker ps, контейнер checkpoint-test не должен отображаться в списке.

docker ps

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

Итоги

В этой лабораторной работе мы научились создавать Docker-контейнер и сохранять его текущее состояние с помощью команды docker checkpoint create. Мы начали с загрузки образа ubuntu и запуска контейнера checkpoint-test в фоновом режиме с командой sleep infinity. Затем мы проверили работу контейнера с помощью docker ps. В завершение мы создали контрольную точку my-checkpoint для контейнера checkpoint-test.