‫ESTÁ BEM.
‫Vamos fazer algumas coisas divertidas nesta palestra.
‫Vamos falar rapidamente sobre a diferença entre imagens e contêineres e eles vão pular direto
‫para brincar com um contêiner.
‫Nós vamos começar.
‫Vamos pará-lo e removê-lo e fazer algumas funções administrativas comuns e, em seguida, vamos verificar os logs
‫de contêiner e os processos em execução em nosso
‫contêiner antes de avançar rapidamente.
‫É bom saber a diferença entre uma imagem e um contêiner que uma imagem é os binários e bibliotecas
‫e o código-fonte que compõem seu aplicativo e o contêiner é uma instância em execução dessa imagem.
‫Agora você pode ter muitos contêineres todos baseados na mesma imagem.
‫Nesta palestra, vamos usar o servidor web Open Source Engine X e assim estaremos
‫iniciando nossos contêineres com base na imagem X do mecanismo e obteremos todas as nossas imagens dos registros. os registros
‫de imagem do código-fonte são para imagens de contêiner e o padrão para o Docker é o Docker
‫Hub, que você pode verificar no hub dot Docker AECOM.
‫Jogue mais com isso mais tarde, mas por enquanto.
‫Esteja ciente de que essas duas coisas são bem diferentes e na próxima seção vamos pular para
‫as imagens.
‫Mas por enquanto vamos nos concentrar em contêineres OK.
‫Agora, vamos iniciar um novo contêiner e usar alguns comandos do Docker para gerenciar esse
‫contêiner do
‫contêiner do contêiner, executar publicar 80 80 engine x.
‫Não se preocupe se você não sabe o que tudo isso significa que nós vamos passar
‫por tudo isso em um minuto Eu vou pressionar Enter para o meu navegador e digite host local.
‫Aqui vamos nós.
‫Nosso servidor X do mecanismo está escutando e eu posso atingir os níveis de atualização e você verá as entradas de log acontecendo em
‫nossa linha de comando aqui.
‫Agora o que acabamos de fazer em segundo plano.
‫O motor Docker realmente procurou por uma imagem chamada engine X e baixou a última imagem para o engine X
‫do Docker Hub e então começou como um novo processo em um novo container para usarmos a parte publicada do comando. porta
‫80 em minha máquina local e envia todo o tráfego dela para o executável que está
‫sendo executado dentro desse contêiner na porta 80 e, como o mecanismo X é um servidor web, ele
‫assumirá como padrão a porta 80 e o tráfego será encaminhado automaticamente pelo meu navegador para
‫meu host local e para esse contêiner.
‫Mas nem sempre queremos que essa coisa funcione em primeiro plano dentro de nossa linha de comando.
‫Então, vamos ver o controle e eu vou acertar a seta para cima Vou fazer um backup um pouco e digitar desanexar
‫agora desanexar informa ao Docker para executá-lo
‫em segundo plano e recuperarmos o contêiner único I. D. do nosso contêiner e toda vez que você executar um novo
‫contêiner você obtém um novo e único I. D. Então, se voltarmos ao nosso navegador
‫e clicarmos em atualizar algumas vezes, poderemos ver que ele ainda está em execução.
‫Então, vamos fazer um comando para listar nossos containers contêineres e você verá o que
‫ainda está sendo executado aqui.
‫Está combinando com o container I. D. do comando que acabamos de executar e você verá o contêiner
‫ainda em execução que acabamos de iniciar.
‫Então, vamos parar a contêiner do container docker real rápido e depois o container I. D. e para
‫o recipiente I. D. Eu só tenho que digitar os primeiros dígitos o suficiente para que seja único e parou em.
‫Agora, se eu fizer um contêiner do docker LSD, você notará que nada aparece.
‫Portanto, o comando LSD só é exibido por padrão executando contêineres.
‫Se eu fizer um traço de LSD, eu volto agora para o que eu obtenho assim quando nós corremos cada vez que o comando docker
‫container run.
‫Começou um novo container a partir da imagem X do engine e você notará à direita, aqui estão esses nomes aleatórios como
‫se não os tivéssemos usado.
‫Como nós conseguimos isso?
‫Então as ideias de contêineres sempre criaram para nós.
‫E o nome também é necessário para ser único e, se não especificá-lo, será criado para nós, para que possamos sempre
‫nomear alguma coisa.
‫Mas se deixarmos que ele escolha, é na verdade um pouco de história interessante em torno do Docker.
‫Eles têm isso há anos, agora que esse nome será gerado aleatoriamente a partir de uma lista aberta
‫de adjetivos e sobrenomes de hackers ou cientistas notáveis e é muito engraçado às vezes
‫você obterá nomes realmente peculiares lá.
‫Então, vamos criar um novo contêiner docker executar uma hora publicar uma hora desanexar, mas
‫desta vez
‫vamos especificar um nome e chamamos de mecanismo de host da Web X e agora se eu fizer o meu recipiente
‫docker LSD traço um você verá três recipientes.
‫O que acabamos de começar e tem um nome de host.
‫E então os dois que nós começamos anteriormente e então paramos agora, já que não estamos rodando isso
‫em primeiro plano, não podemos ver os logs.
‫Então, vamos voltar ao nosso navegador e eu vou atualizar
‫algumas vezes para gerar alguns logs e, em seguida, voltar para o nosso terminal e eu vou fazer docker container log de hospedagem e ele vai cuspir os últimos logs no
‫casa web.
‫Agora há algumas opções com as quais você vai querer brincar no comando logs para que ele
‫siga os logs automaticamente ou pode capturar os últimos eventos de log para que você não acabe com
‫todo o arquivo de log
‫sendo descartado para a sua tela e também podemos usar alguns outros comandos do contêiner docker para verificar o contêiner em
‫execução para que possamos tentar o contêiner docker top e você pode ver a ajuda que nos informa que
‫precisamos especificar o host do nome do contêiner e você pode ver isso é o processo rodando dentro do container agora para o engine X, nós não precisamos necessariamente
‫saber tudo isso, mas é apenas interessante notar que com o engine X
‫existe realmente um processo mestre e então ele gera processos de trabalho baseados na configuração.
‫E mais uma vez, podemos sempre digitar o container do docker e a ajuda do dash dash para obter uma lista de todos os comandos
‫que poderíamos experimentar nesse container.
‫Agora vamos limpar o que acabamos de fazer.
‫Então, vamos fazer um contêiner docker LSI dash a e ele vai listar todos os meus contêineres.
‫Agora, vou remover todos os três ao mesmo tempo. Às vezes, os subcomandos do Docker podem
‫ter vários valores.
‫Então, neste caso, eu posso fazer um contêiner docker são M e, em seguida, eu posso realmente especificar 6 3 F 6
‫9 0 e 0 d e whoops 0 D.
‫Então eu recebi um erro.
‫O que aconteceu aqui?
‫Tudo bem, os dois primeiros foram excluídos com segurança.
‫O terceiro está me dizendo que não posso remover um contêiner em funcionamento porque é uma medida de segurança.
‫Isso garante que você não remova acidentalmente o processo real que ainda está sendo executado.
‫Então, se você fizer um LSD com um recipiente mais escuro, verá que ainda
‫temos um funcionando agora. Eu poderia realmente fazer uma parada de contêineres para pará-lo primeiro e
‫depois removê-lo, mas na verdade vou fazer um contêiner de contêineres rm dash for force e 6 3 F e depois vamos.
‫Agora, se eu fizer um contêiner do docker no último traço, você verá que nada está lá.
‫Então agora nós limpamos nossa bagunça.
‫ESTÁ BEM.
‫Então, em questão de minutos, conseguimos usar um único comando para baixar e executar um servidor web
‫engine X com uma configuração padrão ouvindo na porta 80 e, em seguida, conseguimos criar vários deles com os
‫logs e depois remover o recipientes para limpar o que tínhamos feito.