Docker é uma tecnologia de containers que revolucionou o desenvolvimento e execução de software. Na prática, é possível “empacotar” uma aplicação e todas as suas dependências num container virtualizado que pode ser executado sem qualquer tipo de problema em qualquer ambiente. Aprenda hoje os principais comandos da tecnologia Docker.
Depois da virtualização, a tecnologia de containers tendo vindo a ganhar espaço e popularidade e é aí que aparece o Docker.
Algumas das principais vantagens do Docker incluem:
- Portabilidade: Os containers Docker são independentes da infraestrutura subjacente, o que significa que pode executá-los em qualquer sistema operativo que suporte Docker (seja Linux, Windows ou macOS).
- Isolamento: Os containers fornecem um elevado grau de isolamento entre as aplicações, garantindo que uma aplicação não afete outra no mesmo servidor.
- Eficiência: Os containers partilham o kernel do sistema operativo do host onde estão a ser executados, o que permite ter um melhor desempenho em comparação com as máquinas virtuais tradicionais. Tal característica permite executar mais containers na mesma infraestrutura, uma vez que há um uso mais eficiente dos recursos.
- Facilidade de uso: O Docker fornece ferramentas para criar, distribuir e executar containers de forma simples.
A imagem seguinte mostra a arquitetura de execução de um container e de uma máquina virtual.
Tal como outras tecnologias, o Docker tem vários comandos para criação, gestão e monitorização de containers. Aqui ficam os principais comandos:
- docker run: Este comando é usado para criar e executar um container a partir de uma imagem Docker.
- docker build: Utilizado para construir uma imagem Docker a partir de um Dockerfile.
- docker pull: Para obter uma imagem Docker do registo de imagens especificado.
- docker push: Envia uma imagem Docker para um registo de imagens especificado.
- docker stop: Permite parar a execução de um ou mais containers em execução.
- docker rm: Remove um ou mais containers parados.
- docker ps: Lista os containers em execução.
- docker images: Lista as imagens Docker disponíveis localmente.
- docker exec: Executa um comando dentro de um container em execução.
- docker logs: Acesso aos logs de um container em execução.
As vantagens do Docker são mais que muitas, até porque desta forma o tempo de deploy é bastante reduzido comparativamente a outras soluções (ex. virtualização). Uma solução criada em Docker é altamente portável (conceito: Desenvolve uma vez… executa em qualquer lugar).