Docker: Trabalhando com Containers

From Wiki


Como instalei em um Windows 7, vou executar o Docker QuickStart Terminal.

                        ##         .
                  ## ## ##        ==
               ## ## ## ## ##    ===
           /"""""""""""""""""\___/ ===
      ~~~ {~~ ~~~~ ~~~ ~~~~ ~~~ ~ /  ===- ~~~
           \______ o           __/
             \    \         __/
              \____\_______/
 
 docker is configured to use the default machine with IP 192.168.99.100
 For help getting started, check out the docs at https://docs.docker.com
 
 Start interactive shell
 
 ebasso@ebasso MINGW64 ~
 

Lembre-se do ip fornecido acima. Vou referenciar abaixo com IP_DOCKER_CONTAINER

A seguir temos os principais comandos que utilizamos

Iniciando com os containers

Download de um container com busybox

docker pull busybox

Executa o comando echo dentro do Busybox

docker run busybox echo 'Hello World!'

Ping www.uol.com.br from busybox

 docker run busybox ping www.uol.com.br

Executa um bash em um container com Ubuntu

 docker run -it ubuntu /bin/bash

Atividades mais práticas

Executa o container webserver com o nginx, mapeando a porta 80 para a 8000

docker run -p 8000:80 --name webserver nginx

para colocar como daemon adicionamos o paramêtro "-d"

doker run -d -p 8000:80 --name webserver nginx

Basta você acessar pelo browser, usando o endereço http://<IP_DOCKER_CONTAINER>:8000.

Listando os containers

docker ps

Opções:

-a, --all Show all containers (default shows just running)
-f, --filter value Filter output based on conditions provided (default [])
--format string Pretty-print containers using a Go template
--help Print usage
-n, --last int Show n last created containers (includes all states) (default -1)
-l, --latest Show the latest created container (includes all states)
--no-trunc Don't truncate output
-q, --quiet Only display numeric IDs
-s, --size Display total file sizes

Removendo um container

docker rm CONTAINER

Opções:

-f, --force Force the removal of a running container (uses SIGKILL)

Dica: podemos remover vários containers de uma vez, usando a combinação de comandos:

docker rm -f $(docker ps -qa)

Listando os logs de um container

docker logs [OPTIONS] CONTAINER

Opções:

--details Show extra details provided to logs
-f, --follow Continua lendo. Igual ao comando tail -f
-t, --timestamps Show timestamps

Outras opções importantes

Attach to a running container

docker attach [OPTIONS] CONTAINER

Usado quando colocamos um container com o daemon.

Listando as portas mapeadas dentro de um container

docker port CONTAINER [PRIVATE_PORT[/PROTO]]

Verificar por mudanças no sistema de arquivo

docker diff CONTAINER

Copiando arquivos entre o Sistema Operacional e o Container

docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

Inspecionando detalhes de um container

docker inspect [OPTIONS] CONTAINER|IMAGE|TASK [CONTAINER|IMAGE|TASK...]

Ver também