Introdução
Neste laboratório, você aprenderá como usar o comando docker checkpoint ls para listar os checkpoints de um container Docker. Começaremos criando um container e, em seguida, criando um checkpoint para ele.
Após a criação de um checkpoint, você explorará como listar os checkpoints associados ao container usando o comando padrão docker checkpoint ls. Finalmente, você aprenderá como listar checkpoints quando um diretório de checkpoint personalizado foi especificado.
Criar um container e um checkpoint
Nesta etapa, aprenderemos como criar um container Docker e, em seguida, criar um checkpoint para ele. O checkpointing permite que você salve o estado de um container em execução e o restaure mais tarde. Isso é útil para depuração, migração ou criação de snapshots de sua aplicação.
Primeiro, vamos baixar uma imagem simples que podemos usar para executar um container. Usaremos a imagem ubuntu.
docker pull ubuntu:latest
Você deve ver uma saída indicando que a imagem está sendo baixada.
latest: Pulling from library/ubuntu
...
Status: Downloaded newer image for ubuntu:latest
docker.io/library/ubuntu:latest
Agora, vamos executar um container a partir desta imagem. Executaremos um comando simples que mantém o container em execução por um tempo.
docker run -d --name mycontainer ubuntu:latest sleep 3600
Aqui está uma análise do comando:
docker run: Este comando é usado para executar um novo container.-d: Esta flag executa o container em modo detached (destacado), o que significa que ele é executado em segundo plano.--name mycontainer: Isso atribui o nomemycontainerao container.ubuntu:latest: Isso especifica a imagem a ser usada para o container.sleep 3600: Este é o comando que será executado dentro do container. Ele manterá o container em execução por 3600 segundos (1 hora).
Você pode verificar se o container está em execução usando o comando docker ps.
docker ps
Você deve ver uma saída semelhante a esta, mostrando seu mycontainer em execução:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
<container_id> ubuntu:latest "sleep 3600" About a minute ago Up About a minute mycontainer
Agora que temos um container em execução, vamos criar um checkpoint para ele. Para criar um checkpoint, você precisa usar o comando docker checkpoint create.
docker checkpoint create mycontainer mycheckpoint1
Aqui está uma análise do comando:
docker checkpoint create: Este comando é usado para criar um checkpoint para um container.mycontainer: Este é o nome do container para o qual você deseja criar o checkpoint.mycheckpoint1: Este é o nome que você está dando ao checkpoint.
Se o comando for bem-sucedido, você não verá nenhuma saída. Isso significa que o checkpoint mycheckpoint1 foi criado para o container mycontainer.
Listar checkpoints para o container
Na etapa anterior, criamos um checkpoint chamado mycheckpoint1 para nosso container mycontainer. Agora, vamos aprender como listar os checkpoints que existem para um container específico.
Para listar os checkpoints de um container, você usa o comando docker checkpoint ls seguido pelo nome do container.
docker checkpoint ls mycontainer
Este comando exibirá uma lista de todos os checkpoints associados ao mycontainer.
Você deve ver uma saída semelhante a esta, mostrando o checkpoint que criamos na etapa anterior:
CHECKPOINT ID
mycheckpoint1
Esta saída confirma que o checkpoint mycheckpoint1 existe para o container mycontainer.
Você pode criar múltiplos checkpoints para o mesmo container. Vamos criar outro checkpoint para ver como a lista muda.
docker checkpoint create mycontainer mycheckpoint2
Agora, liste os checkpoints novamente:
docker checkpoint ls mycontainer
Desta vez, a saída deve mostrar ambos os checkpoints:
CHECKPOINT ID
mycheckpoint1
mycheckpoint2
Isso demonstra como listar todos os checkpoints associados a um determinado container.
Listar checkpoints usando um diretório de checkpoint personalizado
Nas etapas anteriores, criamos checkpoints para nosso container mycontainer e os listamos usando o diretório de checkpoint padrão. O Docker armazena checkpoints em um local padrão, mas você também pode especificar um diretório personalizado para armazenar seus checkpoints. Isso pode ser útil para organizar checkpoints ou armazená-los em um volume diferente.
Para criar um checkpoint em um diretório personalizado, você usa a flag --checkpoint-dir com o comando docker checkpoint create. Primeiro, vamos criar um diretório para armazenar nosso checkpoint personalizado. Criaremos um diretório chamado mycheckpoints em nosso diretório home.
mkdir ~/project/mycheckpoints
Agora, vamos criar um novo checkpoint para mycontainer e armazená-lo no diretório ~/project/mycheckpoints.
docker checkpoint create --checkpoint-dir ~/project/mycheckpoints mycontainer mycheckpoint3
Aqui está uma análise do comando:
docker checkpoint create: Este comando é usado para criar um checkpoint.--checkpoint-dir ~/project/mycheckpoints: Esta flag especifica o diretório personalizado onde o checkpoint será armazenado.mycontainer: Este é o nome do container para o qual você deseja criar o checkpoint.mycheckpoint3: Este é o nome que você está dando a este novo checkpoint.
Se o comando for bem-sucedido, você não verá nenhuma saída. Isso significa que o checkpoint mycheckpoint3 foi criado no diretório ~/project/mycheckpoints.
Agora, para listar os checkpoints armazenados em um diretório personalizado, você precisa usar o comando docker checkpoint ls com a flag --checkpoint-dir, especificando o diretório personalizado.
docker checkpoint ls --checkpoint-dir ~/project/mycheckpoints mycontainer
Este comando listará os checkpoints encontrados no diretório personalizado especificado para o container mycontainer.
Você deve ver uma saída semelhante a esta, mostrando apenas o checkpoint que criamos no diretório personalizado:
CHECKPOINT ID
mycheckpoint3
Observe que este comando lista apenas os checkpoints no diretório personalizado especificado (mycheckpoint3) e não mostra os checkpoints armazenados no local padrão (mycheckpoint1 e mycheckpoint2).
Para ver todos os checkpoints para o container, independentemente de onde eles estão armazenados, você precisaria listar os checkpoints de cada diretório separadamente ou usar uma ferramenta que agregue essa informação. No entanto, para listar checkpoints em um diretório personalizado específico, a flag --checkpoint-dir é essencial.
Finalmente, vamos limpar o container que criamos.
docker stop mycontainer
docker rm mycontainer
Isso para e remove o container mycontainer.
Resumo
Neste laboratório, aprendemos como usar o comando docker checkpoint ls para listar checkpoints para um container Docker. Começamos criando um container e, em seguida, criando um checkpoint para ele usando o comando docker checkpoint create.
Em seguida, exploramos como listar os checkpoints criados para o container usando o comando docker checkpoint ls. Finalmente, aprendemos como listar checkpoints localizados em um diretório de checkpoint personalizado, demonstrando a flexibilidade de gerenciar checkpoints em diferentes locais.



