Aprenda a dar uns toques com a tecnologia Docker
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).
Um link também muito importante, para ir buscar imagens de aplicações já construidas é: https://hub.docker.com/
Por exemplo se quiseremos o SQL Server é muito mais simples usar um container porque ocupa menos espaço e recursos do que instalar tudo de raiz numa maquina de desenvolvimento.
Btw: Parabens pelo artigo
próximo artigo docker em cima de kubernetes?
VOTO a favor!
Podia ser um exemplo/tutorial de como instalar um cluster de kubernetes… fica a dica.
Para gerir os containers via web, há o Portainer ( https://www.portainer.io/ ).
Cuidado com isto:
“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)”
não é bem assim! compilem lá um docker num destes SOs e depois tentem correr num ARM….
já consegues fazer build de imagens multiarch, atualiza-te
Isso já acontece
Qual a licença? Pode-se utilizar em ambientes empresariais?
Para empresas até 250 users e 10 milhões revenue é free, como nunca passei por uma dessas sempre pagámos licença que custa meia dúzia de tostões furados.
Estamos em 2024 e nunca teres ouvido falar em docker que anda por aí há uma década…
Já tinha ouvido e lido algo no passado. Trabalhava com outras soluções e não precisava na altura. A questão do licenciamento tb era uma limitação pois na verdade trabalhando para a administração central do estado os processos são mais complexos. É algo a explorar.
Pois, containers no estado é como a cloud, só lá para 2030