Introdução

Execução do container:

$ docker container run -d -p 8080:3000 \
                    marcelodpbarbieri/simulador-caos:v1
$ docker container ls
CONTAINER ID   IMAGE                                 COMMAND                  CREATED       STATUS       PORTS                                       NAMES
f944f60523be   marcelodpbarbieri/simulador-caos:v1   "docker-entrypoint.s…"   3 hours ago   Up 3 hours   0.0.0.0:8080->3000/tcp, :::8080->3000/tcp   reverent_jepsen                    

Acessar a aplicação disponibilizada pelo container e clicar no botão "Encerrar Aplicação com Sucesso"

Aplicação encerrada com sucesso:

O container não está mais em execução:

Foi encerrado normalmente com sucesso, sem erros, com código 0:

Para que a aplicação seja disponibilizada novamente faz-se necessário uma nova execução com a criação de um novo container:

Acessar a aplicação disponibilizada pelo container e clicar no botão "Encerrar Aplicação com Erro":

Aplicação encerrada com sucesso:

A aplicação já não está mais disponível:

Foi encerrado devido a um erro ou condição anormal com código 1, sem tratamento para recuperação do processo:

Para que a aplicação seja disponibilizada novamente faz-se necessário executar um novo container:

E, num cenário mais caótico, se o Docker Daemon fosse interrompido?

Mas ao iniciar novamente o Docker Daemon a aplicação continuará indisponível:

Para que a aplicação volte a funcionar faz-se necessário executar um novo container:

Para evitar a execução manual de novos containers faz-se necessária a criação de políticas para que haja a tomada de decisão para o reinício automático da aplicação, com as opções:

  • on-failure

  • unless-stopped

  • always

Last updated