6.4 Atualizando o Servidor Web no Ambiente de Produção

Finalmente, para encerrar, resta apenas atualizar o ambiente de produção considerando a nova imagem aprovada e gerada pelo processo de CI/CD. Apesar de ilustrado aqui de forma manual, esse passo também poderia ser completamente automatizado e integrado ao CI/CD se estivéssemos utilizando a nuvem para executar nossa aplicação. AWS, Oracle, dentre outras empresas, possuem soluções específicas para se trabalhar com DevOps e Conteinerização, sendo soluções ideais para uso profissional de DevOps.

Assumindo que o sistema já havia sido colocado em execução com o comando docker-compose up -d

$ cd ~/temp/devops-extra/cap-06
$ docker-compose up -d
Starting cap06_db_1 ... 
Starting cap06_db_1 ... done
Starting cap06_web_1 ... 
Starting cap06_web_1 ... done
Starting cap06_monitor_1 ... 
Starting cap06_monitor_1 ... done

$ docker-compose logs
...

A situação atual do mesmo é como apresentada abaixo:

$ docker ps -a
CONTAINER ID        IMAGE                       COMMAND                  CREATED             STATUS              PORTS                    NAMES
b61cd2b69a74        aurimrv/nagios-server-img   "/usr/local/bin/star…"   28 minutes ago      Up 28 minutes       0.0.0.0:80->80/tcp       cap06_monitor_1
4e9f13249bb3        aurimrv/tomcat-server-img   "catalina.sh run"        29 minutes ago      Up 28 minutes       0.0.0.0:8080->8080/tcp   cap06_web_1
18e9db762aa1        aurimrv/mysql-server-img    "docker-entrypoint.s…"   29 minutes ago      Up 29 minutes       0.0.0.0:3306->3306/tcp   cap06_db_1

Ou seja, o sistema está operacional com três contêineres operando normalmente. Para interromper e subir novamente apenas o Servidor Web, os seguintes comandos podem ser utilizados.

Inicialmente o contêiner referente ao Servidor Web é parado e removido. Em seguida elimina-se da máquina local a imagem salva anteriormente.

Desse modo, após parar e remover a instância anterior da imagem do Servidor Web, inicializam-se novamente os serviços com o docker-compose up -d. Como os Servidores de Banco de Dados e de Monitoramento não foram interrompidos, apenas o Servidor Web terá sua instância restabelecida a partir da nova imagem do Hub Docker.

Last updated

Was this helpful?