Docker CLI é a ferramenta essencial para a gestão de contentores Docker, oferecendo uma vasta gama de opções para otimizar e configurar implantações de aplicações multi-contentores. Para iniciar contentores através da Docker CLI, tem duas poderosas opções: os comandos docker run e docker start.
Este artigo nĂŁo sĂł revela como iniciar contentores Docker, mas tambĂ©m explora as opções disponĂveis e fornece exemplos práticos para o ajudar a dominar estas ferramentas.
Como Iniciar Contentores Docker
Pré-requisitos:
- Acesso Ă linha de comandos.
- Privilégios administrativos no sistema.
- Docker instalado.
Criar e Iniciar Novo Contentor Usando o comando docker run
O comando docker run (também conhecido como docker container run) permite ao utilizador criar e iniciar um contentor utilizando apenas uma imagem como argumento. Aqui está a sintaxe básica que deve conhecer:
docker run [opções] [imagem] [comandos]
Ao executar o comando docker run, o Docker cria um contentor utilizando a imagem especificada e inicia-o automaticamente.
Opções Poderosas do docker run
Veja abaixo uma seleção das opções mais utilizadas com o comando docker run. Estes argumentos são fundamentais para nomear contentores, definir variáveis, configurar portas, e muito mais!
Opção | Descrição |
---|---|
-d, –detach | Executa o contentor em segundo plano. |
-e, –env | Define variáveis de ambiente. |
–entrypoint | Define um ponto de entrada personalizado para a imagem do contentor. |
-i, –interactive | Anexa a entrada padrĂŁo do contentor. |
–label | Define metadados para o contentor. |
-m, –memory | Define o limite de memĂłria do contentor. |
–name | Dá um nome personalizado ao contentor. |
-p, –publish | Publica uma porta do contentor para o host. |
-t, –tty | Aloca um pseudo-TTY. |
Exemplos Práticos de docker run
O comando docker run simplifica a gestão de contentores ao reunir todos os parâmetros de configuração num único comando. Veja este exemplo em ação:
Criação e InĂcio de um Contentor Nginx:
- Crie um contentor baseado na imagem oficial do Nginx.
- Mapeie a porta externa 8080 para a porta 80 do contentor.
- Nomeie o contentor como nginx-test.
- Execute o contentor em modo destacado, sem ligar a sessĂŁo de terminal Ă saĂda padrĂŁo do contentor.
docker run -d --name nginx-test -p 8080:80 nginx
Após a execução, o Docker imprime o ID do contentor e retorna ao prompt do shell.
Verifique o Funcionamento do Contentor
Para confirmar se o contentor está a correr corretamente, utilize o seguinte comando para listar os contentores ativos:
docker ps
O contentor nginx-test deverá aparecer na lista.
Executar Comandos Dentro de um Contentor:
A versatilidade do docker run permite ainda executar comandos dentro de contentores em execução. Basta adicionar as flags -i e -t e incluir um comando de shell como argumento final:
docker run -it [imagem] [comando]
Por exemplo, o comando abaixo cria o contentor ubuntu-test baseado na imagem Ubuntu e executa o Bash dentro do contentor:
docker run -it --name ubuntu-test ubuntu /bin/bash
Inicie Contentores Parados Usando docker start
O comando docker start (também conhecido como docker container start) é utilizado para iniciar um ou mais contentores que foram previamente parados. Ao contrário do docker run, este comando funciona apenas com contentores já existentes.
Aqui está a sintaxe geral do docker start:
docker start [opções] [nome-ou-id-do-contentor1] [nome-ou-id-do-contentor2] [...]
Opções Especiais do docker start
O comando docker start inclui trĂŞs opções, que lidam com as conexões de entrada, saĂda e erro padrĂŁo. Confira a tabela abaixo:
Opção | Descrição |
---|---|
-a, –attach | Anexa STDOUT/STDERR. |
–detach-keys | Sobrescreve a sequĂŞncia de teclas para destacar o contentor. |
-i, –interactive | Anexa a entrada padrĂŁo do contentor. |
Exemplos Práticos de docker start
Para utilizar o docker start, localize um contentor parado no sistema. O comando docker ps -a lista todos os contentores disponĂveis, tanto em execução quanto parados:
docker ps -a
Contentores parados indicam o estado como Exited. Veja abaixo como iniciar o contentor nginx-test:
docker start nginx-test
Anexar SessĂŁo de Terminal ao Contentor:
Para anexar a sessĂŁo de terminal Ă saĂda padrĂŁo do contentor, utilize a flag -i:
docker start -i nginx-test
Caso precise executar comandos ou obter acesso ao shell do contentor, utilize o comando docker exec. Por exemplo, para abrir um shell interativo no contentor nginx-test:
docker exec -it nginx-test /bin/sh
ConclusĂŁo
Depois de ler este artigo, já está preparado para usar docker run e docker start para personalizar o arranque e comportamento dos seus contentores Docker. Foram apresentadas opções para ambos os comandos, acompanhadas de exemplos práticos que pode começar a aplicar agora mesmo!