Projeto de exemplo para estudar docker
docker ps lista todos os containers ativos
docker ps -a lista todos os containers que ja foram criados, ativos ou não
docker start id ou name do container inicia um container que estava parado
docker stop id ou name do container para um container que estava ativo
docker stop -t 0 id ou name do container para um container que estava ativo passando o parametro -t que especifica que não deve esperar os 10 segundos que o docker espera por default ao dar stop em um container
docker run -d ubuntu baixa e inicia um container com a imagem do ubuntu sem atrelar o terminal ao terminal do ubuntu
docker run -it ubuntu baixa e inicia um container com a imagem do ubuntu e atrela o terminal ao terminal do ubuntu
docker run -d --name meucontainer ubuntu cria um container chamado meucontainer
docker run -d -p 8080:3000 --name meucontainer node cria um container e mapeia a porta 8080 do host local com a porta 3000 do container
docker network create --driver bridge minharede cria uma rede chamada minharede
docker network ls lista todas as redes
docker network inspect id ou name da rede mostra no console todos os detalhes da rede inspecionada
docker run -d --network minharede --name ubuntunarede ubuntu cria um continer chamado ubuntunarede e coloco ele na rede minharede
docker image ls lista todas as imagens
docker image inspect nome da imagem mostra no console os detalhes da imagem
docker inspect nome do container mostra no console os detalhes do container, inclusive o Mounts pra ver os volumes que estão sendo usados
docker rm name ou id do container exclui um container
docker rm -f name ou id container para e exclui um container
docker rmi nome da imagem exclui uma imagem
docker build -f Dockerfile -t mcastrodotnet/node(nomedousuario/nomedaimagem) cria uma imagem com base em um Dockerfile
docker login faz login no dockerhub
docker push nomedousuario/nomedaimagem envia a imagem para o docker hub
Exemplo de Dockerfile:
FROM node:latest
MAINTAINER Matheus Castro
COPY . /var/www
WORKDIR /var/www
RUN npm install
ENTRYPOINT ["npm", "start"]
EXPOSE 3000