Docker (para iniciantes)
- #Docker
Olá a todos! espero que estejam bem.
Recentemente inicie meus estudos com Docker, me deparei com centenas de materiais gratuitos, muitas nomenclaturas "difíceis" e nada muito didático (para alguém que nunca teve contato), Decidi compartilhar aqui com vocês o básico de como conseguir criar e entender a primeira parte dessa longa jornada, espero que gostem, caso tenha feedbacks e dicas , aceito todas elas! Lembrando, sou iniciante e achei interessante tentar ajudar iniciantes com essa pequena dica que consegue recolher e trazer de forma mais didática!
O que e Docker?
- Docker são containers onde podemos baixar imagens de aplicações ou sistemas
e roda-los diretamente em nuvem, ficando claro que e mais econômico e benéfico do que utilizar maquina virtual.
-Podemos ter diversos containers como um navio ,cada contêiner tem suas funções e ambientes.
Vantagens
-evita desperdício de hardware, evitando instalação de maquinas virtuais
-simplifica o gerenciamento de Libs
- imutabilidade
-facilidade do deploy
-empacotamento da aplicação
o Docker e dividido em 3 partes
Cliente
-seria a linha de comando do docker.
-comando que executamos como: ps ,pull e run
Docker Host
- Containers
- Docker Daemon
- Images
Registry
- ngix e etc
*Docker Daemon - servico do linux, o docker cliente se comunica diretamente com o daemon.
-com meu cliente com a variável Docker_host , posso conversar com outros Daemons(hosts), estando em cloud, outras maquinas e etc
-gerencia as imagens
-Apartir das imagens posso criar containers
*Registry - servidor remoto com disponibilidade de imagens, de onde o Docker Daemon baixa as imagens
-podemos possuir Registry com imagens privadas, como em uma empresa por exemplo
-------------------------------------------------------------------------------------------------------------------------------------------------------
Criando Dockerfile
-necessario ser criado com a primeira letra maiuscula
-da o direcionamento de como deve funcionar o container
-instruções de criação
Base do coker file
FROM - é o comando inicial de um docker file, ele vai especificar a imagem que vai servir de base
COPY - Voce pega no diretorio onde esta o dockerfile e copia para o container, ex: COPY aula.txt(arquivo) /app/aula.txt
estou informando que esse arquivo aula.txt sera copiado para a pasta app do meu dockerfile
ADD - adiciona o download de alguma url ao container, pode descompactar arquivos TAR e executa o mesmo que o copy
-------------------------------------------------------------------------------------------------------------------------------------------------------
# build serviço (precisar ter o java 11 e o maven instalado)
mvn clean package
# executar o serviço buildado
java -jar .\service.jar
# criar imagem docker
docker build -t eumagnun/feedback-games:v1 .
#criar container com imagem docker criada
docker run --name feed-games -d -p 8080:8080 eumagnun/feedback-games:v1
#parar container
docker stop SEU_CONTAINER_ID
#iniciar container
docker start SEU_CONTAINER_ID
#remover todos os containers
docker rm -vf $(docker ps -a -q)
#remover todas as imagens
docker rmi -f $(docker images -a -q)




MUITO BOM MEU AMIGO!
Vou seguir esse post. Eu creio que final da semana que vem acabo curso de linux fundamentals. Ai já vou dar alguns passos em Dockers. Havia assistido a um video do professor Denilson sobre Docker e Containers. Vou seguir essa trilha.
Boas dicas, valeu!