São unidades de softwares que empacota o código e todas as suas dependências para que o aplicativo seja executado de forma rápida e confiável de um ambiente de computação para outro.
São pacotes de software leve, autônomo e executável que inclui tudo o que é necessário para executar um aplicativo: código, tempo de execução, ferramentas do sistema, bibliotecas do sistema e configurações.
Containers são imagens que estão sendo executadas no momento da observação e imagens são 'pacotes' com os pedaços de código necessários para sua execução.
- Docker instalado em sua máquina (vide a página oficial do Docker para maiores detalhes).
Este projeto utiliza-se do arquivo Dockerfile montado no projeto Estudos-dev_container e visa realizar um primeiro mergulho no ambiente Docker e em suas funcionalidades/facilidades para o desenvolvimento de softwares.
- Docker: arquivo utilizado para descrever os passos necessários para criação da imagem.
- docker-compose.yaml: arquivo utilizado para gerir múltiplas imagens, caso seja necessário.
- Makefile: arquivo utilizado para falicitar o desenvolvedor ao digitar comandos no terminal.
-
Make ou Make up: executa o comando 'docker compose up -d'. Comando utilizado para criar as imagens definidas no arquivo 'docker-compose.yaml', criar os respectivos containers (imagens em execução) e deixar os containers em execução em segundo plano.
-
Make build: executa o comando 'docker compose build'. Comando utilizado para apenas criar as imagens definidas no arquivo 'docker-compose.yaml'.
-
Make Down: executa o comando 'docker compose down'. Comando utilizado destruir os contaiers em execução.
-
Make exec: executa a regra Make up e, posteriormente, executa o comando 'docker exec -it meu_container bash'. Comando utilizado acessar o container criado.
-
Make fclean: executa a regra Make down e, posteriormente, executa os comandos 'docker image rm linux_dev:4.2.0' e 'rm -rf test_dir_local'. Esta regra limpa todo o conteúdo criado (containers, imagens e pastas).
-
Make list: executa os comandos 'docker container ls -a', 'docker image ls', 'docker volume ls', 'docker network ls' e 'ls -la'. Comando utilizado listas todos os recursos docker e pastas criados pelos projeto.
Acesse o site oficial do Docker para maiores informações.