Giter VIP home page Giter VIP logo

docker's Introduction

Comandos Descrição
docker run imagem cria o container a partir da imagem e roda
docker run -it imagem roda de modo interativo
docker run -d imagem roda em background
docker run -p porta:porta imagem habilitar a comunicação de portas entre container e pc, sendo a 1ª porta do pc e a 2ª do container
docker run --name app Roda o container com um nome específico
docker pull imagem baixa a imagem do Docker Hub
docker ps lista containers ativos
docker ps -a lista todos os containers
docker images lista as imagens do sistema
docker image remove nome_imagem Remove uma imagem
docker image tag image_id novo_nome Cria uma nova imagem a partir de uma existente. Ex.: docker imagem tag 130d498f735a pedrosa/app:v.1.0.0
docker login login ao Docker hub
docker push repository/app:tagname Sobe a imagem para o repositório
docker logs container Mostra logs do container
docker exec container comando Executar comandos dentro do container sem precisar acessá-lo
docker exec -it container comando Executar comandos de forma interativa
docker stop container Parar um container
docker start container Iniciar um container parado
docker ps -a Lista todos os containers
docker rm container Remove um container

Dockerfile

  • Arquivo de configuração da imagem
Comandos Descrição
FROM É a plataforma, será rodado em Nodejs, Python, Ubuntu...
WORKDIR Work Directory - pasta de trabalho
COPY Copiar arquivos da máquina local para imagem
ADD Copia arquivos de sites ou arquivos compactados e descompacta
RUN Instalar dependências e rodar programas no terminal, executa comandos quando está criando a imagem
ENV Configurações de ambiente
EXPOSE Expor porta
USER Usuário que vai executar a aplicação
CMD / ENTRYPOINT Rodar comandos após a imagem ter sido construída

Versionamento de imagens

docker build -t nome_aplicacao:vx.x .
docker build -t app:v1.0.0 .

Subindo imagem para Docker Hub

  1. Criar repositório no Docker Hub

  2. Construir imagem

docker build -t app .
  1. Criar imagem que será armazenada no repositório com a estrutura "nome_repositorio/app:tagname".
docker image tag image_id usuarioteste/app:v1.0.0
  1. Fazer login com docker login

  2. Subindo imagem

docker push usuarioteste/app:v1.0.0

Compartilhando imagens

Permitir compartilhar imagem sem ser pelo Docker Hub

  1. Compactar a imagem
docker image save -o appv1.tar app:v1.0.0
  1. Para descompactar
docker load -i appv1.tar

Redirecionamento de Portas

Redirecionando a porta 80 do meu localhost para a porta 3000 do container

docker run -d -p 80:3000 --name manga app:v1.0.0

Executando comandos dentro do container sem ter que entrar no container

docker exec nome_container ls

Volumes Persistentes

Maneira de criar volumes dentro dos containers que são resistentes, se o container for excluído, o volume não será perdido.

Criar volume

docker volume create app-dados

Insepcionar o volume

docker volume inspecto app-dados

Atachar o volume a uma nova imagem -v nome_volume:diretório_container

docker run -d -p 3000:3000 --name kiwi -v app-dados:/app/dados app:v2

Copiando arquivos do Host -> Container e vice-versa

docker cp container:arquivo local_host

Container -> Host

docker cp kiwi:/app/dados/file.txt .

Host -> Container

docker cp teste.txt kiwi:/app/dados

Docker Compose

Possibilidade de criar múltiplos containers que interagem entre si. Uma aplicação com múltiplos containers.

Arquivo sobre todos os containers que irão subir.

Verificando versão do docker-compose

docker-compose --version

Construir containers

docker-compose up

Para containers

docker-compose down

docker's People

Contributors

gabrielpedrosati avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.