Giter VIP home page Giter VIP logo

container-adatech's Introduction

Docker comandos básicos

Cursos gratuitos AdaTech

https://ada.tech/

Links úteis

https://docs.docker.com/get-started/docker_cheatsheet.pdf
https://labs.play-with-docker.com/
https://training.play-with-docker.com/
https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

Livros

  • Descomplicando o Docker
  • Containers com Docker: Do desenvolvimento à produção
  • Do zero ao Docker: Guia básico referencial de instalação, uso e segurança no uso de containers em Docker para iniciantes
  • Docker: Up & Running: Shipping Reliable Containers in Production (English Edition / Advanced)

Pré requisitos

  • Comandos básicos linux
  • Sistemas operacionais

Documentação oficial do docker com todas as linhas de comandos seus argumentos e parâmetros https://docs.docker.com/engine/reference/commandline/docker/

Baixar uma imagem docker

$ docker pull <image name>

Procurar imagem no docker hub

$ docker search <image name>

Ver histórico de alterações de ima imagem

$ docker history <image name>

Enviar imagem para o docker hub

docker push <image name>

Listar containers

$ docker ps
$ docker ps --all

Lista imagens containers locais

$ docker images
$ docker images --all

Criar um container

$ docker create -ti ubuntu

Iniciar um container

$ docker start <container id>

Acessa um container recem criado

$ docker attach <container id>

Parando um container

$ docker stop <container id>

Restartando um container

$ docker restart <container id>

Pausar um container

$ docker pause <container id>

Despausar um container

$ docker unpause <container id>

Verificando uso de recursos dos containera

$ docker stats
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
bad1631b74d4 magical_black 0.00% 828KiB / 7.661GiB 0.01% 1.02kB / 0B 0B / 0B 1

Verificando logs do container

$ docker logs <container id>
$ docker logs -f <container id>

Acessando o bash do container iniciado

$ docker exec -ti <container id>

Removendo container

$ docker rm <container id>

Especificando tamanho de memória para container

$ docker run -ti -m 512M --name container_name ubuntu

Especificando tamanho de cpu para container

$ docker run --cpus=0.5 --name container_name apache

Atualizando tamanho da cpu e memória do container

$ docker update -m 256m --cpus=1 container_name

Ver detalhes do container

$ docker inspect <container id>

Removendo uma imagem do host local

$ docker rmi <image name>
$ docker rmi $(docker images -a -q) ## Remove todas as imagens

Parar todos os containers

$ docker stop $(docker ps -a -q)

Remover todos os containers

$ docker rm $(docker ps -a -q)

Listar volumes docker

$ docker volume ls

Criar um novo volume docker tmpfs

$ docker volume create my-volume-name

Iniciar um container com volume do tipo tmpfs

$ docker run -ti -v my-volume-name:/app ubuntu bash

Iniciar um container com volume do tipo bind

$ docker run -ti -v /home/username/myfolder:/app ubuntu bash

Dockerfile

Primeiro Dockerfile

## File name is Dockerfile
FROM ubuntu
RUN /bin/echo "HELLO DOCKER"

Realizando build de uma imagem docker apartir do Dockerfile

$ docker build -t userDockerHub/ubuntu:MYTAG

Saiba mais sobre as tags na documentação oficial https://docs.docker.com/engine/reference/commandline/tag

Enviando imagem para dockerhub

$ docker push userDockerHub/ubuntu:MYTAG

Opções disponíveis para criar um Dockerfile

ADD -- Copia novos arquivos, diretórios, arquivos TAR ou arquivos remotos e os adiciona ao filesystem do container.

CMD -- Executa um comando. Diferentemente do RUN, que executa o comando no momento em que está "buildando" a imagem, o CMD irá fazê-lo somente quando o container é iniciado.

LABEL -- Adiciona metadados à imagem, como versão, descrição e fabricante.

COPY -- Copia novos arquivos e diretórios e os adiciona ao filesystem do container.

ENTRYPOINT -- Permite que você configure um container para rodar um executável. Quando esse executável for finalizado, o container também será.

ENV -- Informa variáveis de ambiente ao container.

EXPOSE -- Informa qual porta o container estará ouvindo.

FROM -- Indica qual imagem será utilizada como base. Ela precisa ser a primeira linha do dockerfile.

MAINTAINER -- Autor da imagem.

RUN -- Executa qualquer comando em uma nova camada no topo da imagem e "commita" as alterações. Essas alterações você poderá utilizar nas próximas instruções de seu dockerfile.

USER -- Determina qual usuário será utilizado na imagem. Por default é o root.

VOLUME -- Permite a criação de um ponto de montagem no container.

WORKDIR -- Responsável por mudar do diretório "/" (raiz) para o especificado nele.

container-adatech's People

Contributors

wiltoninfra 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.