Docker é uma ferramenta open source para empacotar e executar aplicações em containers. Containers compartilham recursos do sistema operacional e consomem menos recursos do que máquinas virtuais. Docker permite isolar e executar aplicações de forma rápida e escalável independente da linguagem ou framework utilizado.
1. O documento apresenta um ambiente de desenvolvimento usando Docker e Ruby on Rails, descrevendo como configurar containers para rodar uma aplicação Rails com banco de dados Postgres.
2. Inicialmente são apresentados alguns problemas no desenvolvimento sem Docker e depois são mostrados comandos básicos do Docker como criar e executar containers.
3. É criado um projeto Rails dentro de um container e depois é configurado um Dockerfile para criar uma imagem com a aplicação e dependências.
Docker utiliza o LXC ou Libcontainer para criar containers leves que isolam processos. O Docker Hub permite compartilhar, pesquisar e baixar imagens de containers. Dockerfiles definem imagens usando comandos como FROM, RUN e EXPOSE. Containers são instâncias de imagens que podem ser iniciadas, pausadas e compartilhadas.
Apresentação da ferramenta Docker para o pessoal da Websix. Passos básicos de como iniciar a utilização de containers a seu favor. Padronização de ambiente de desenvolvimento, staging, QA e Produção
Docker: uma visão geral e exemplos de usoTobias Sette
O documento fornece uma introdução abrangente ao Docker, incluindo: (1) O que é o Docker e como ele empacota e executa aplicações em containers leves; (2) Os benefícios do Docker como ferramenta para implantação e escalabilidade de aplicativos; (3) Exemplos de uso do Docker com diferentes linguagens/frameworks como Python/Flask, PHP/Apache e Java/Wildfly.
Uma visão geral do docker, uma ferramenta de gerenciamento de contêiners para simular o comportamento de aplicações em ambientes totalmente gerenciados.
A apresentação ensina os conceitos básicos e apresente um bloco de anotações com os principais comandos para o dia-a-dia.
Docker Compose permite configurar e executar múltiplos contêineres Docker de uma só vez usando um único arquivo de configuração. Isso torna mais fácil desenvolver e implantar aplicações que consistem em vários serviços como web apps, bancos de dados e filas de mensagens. O documento descreve como Docker Compose simplifica o gerenciamento de ambientes de desenvolvimento complexos com múltiplos serviços em contêineres com um único comando "docker-compose up".
Introdução ao Docker até a criação de ambientes imutáveis com docker-compose.
---
Docker introduction until immutable environments with docker-compose. Language: PT-BR
1. O documento apresenta um ambiente de desenvolvimento usando Docker e Ruby on Rails, descrevendo como configurar containers para rodar uma aplicação Rails com banco de dados Postgres.
2. Inicialmente são apresentados alguns problemas no desenvolvimento sem Docker e depois são mostrados comandos básicos do Docker como criar e executar containers.
3. É criado um projeto Rails dentro de um container e depois é configurado um Dockerfile para criar uma imagem com a aplicação e dependências.
Docker utiliza o LXC ou Libcontainer para criar containers leves que isolam processos. O Docker Hub permite compartilhar, pesquisar e baixar imagens de containers. Dockerfiles definem imagens usando comandos como FROM, RUN e EXPOSE. Containers são instâncias de imagens que podem ser iniciadas, pausadas e compartilhadas.
Apresentação da ferramenta Docker para o pessoal da Websix. Passos básicos de como iniciar a utilização de containers a seu favor. Padronização de ambiente de desenvolvimento, staging, QA e Produção
Docker: uma visão geral e exemplos de usoTobias Sette
O documento fornece uma introdução abrangente ao Docker, incluindo: (1) O que é o Docker e como ele empacota e executa aplicações em containers leves; (2) Os benefícios do Docker como ferramenta para implantação e escalabilidade de aplicativos; (3) Exemplos de uso do Docker com diferentes linguagens/frameworks como Python/Flask, PHP/Apache e Java/Wildfly.
Uma visão geral do docker, uma ferramenta de gerenciamento de contêiners para simular o comportamento de aplicações em ambientes totalmente gerenciados.
A apresentação ensina os conceitos básicos e apresente um bloco de anotações com os principais comandos para o dia-a-dia.
Docker Compose permite configurar e executar múltiplos contêineres Docker de uma só vez usando um único arquivo de configuração. Isso torna mais fácil desenvolver e implantar aplicações que consistem em vários serviços como web apps, bancos de dados e filas de mensagens. O documento descreve como Docker Compose simplifica o gerenciamento de ambientes de desenvolvimento complexos com múltiplos serviços em contêineres com um único comando "docker-compose up".
Introdução ao Docker até a criação de ambientes imutáveis com docker-compose.
---
Docker introduction until immutable environments with docker-compose. Language: PT-BR
Este documento apresenta uma introdução ao Docker, incluindo sua arquitetura, comunidade, usos comuns e comandos básicos. O Docker permite isolar e empacotar aplicações em containers leves para facilitar a portabilidade e padronização do desenvolvimento. Exemplos demonstram como executar containers de Ruby e definir recursos como memória e CPU.
O documento descreve o que é o Docker, suas principais características como leveza, segurança e abertura. Explica as diferenças entre containers e máquinas virtuais e como o Docker pode reduzir custos e agilizar o deploy de aplicações. Detalha os principais comandos do Docker e o fluxo de trabalho, incluindo a criação de um Dockerfile.
Docker é uma plataforma open source usada para construir, executar e distribuir ambientes de forma portátil e simples. A oficina irá apresentar o que é Docker, sua arquitetura, instalação, comandos básicos como containers, imagens e Dockerfile, e orquestrar containers com Docker Compose.
O documento discute os desafios de entregar software para diferentes ambientes de forma simples e reproduzível. Ele propõe o uso de containers Docker para empacotar as aplicações e suas dependências, permitindo que elas sejam executadas de forma isolada e portável em diferentes ambientes como desenvolvimento, produção e servidores de integração contínua.
O documento apresenta Docker, um software de containerização que empacota aplicações e suas dependências para serem executadas de forma leve, portátil e isolada. Explica o que são containers, sua história, as vantagens sobre máquinas virtuais e boas práticas para desenvolvedores. Por fim, fornece referências adicionais sobre Docker.
Docker, facilitando a vida do desenvolvimentoSérgio Lima
Docker facilita a criação e administração de ambientes isolados para aplicações, permitindo que elas funcionem independentemente da infraestrutura. O documento discute o que é Docker, por que usá-lo, como usar imagens e containers básicos, construir imagens personalizadas e encapsular aplicações com Docker Compose. Finalmente, apresenta a plataforma Rancher para gerenciar containers em produção.
O documento apresenta uma introdução ao Docker, incluindo sua história, conceitos-chave como containers e imagens, e demonstrações práticas de como criar e gerenciar containers Docker. É explicado como o Docker permite isolar e empacotar aplicações em unidades portáteis através do uso de namespaces, cgroups e union file systems.
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Renato Groff
Apresentação sobre primeiros passos no uso de Docker, bem como dicas e truques na manipulação de containers. Palestra online realizada para profissionais da empresa Tecnobank no dia 20/04/2020.
O documento fornece uma introdução sobre Docker, explicando que é uma ferramenta open source para gerenciar containers Linux. Ele descreve como Docker permite empacotar ambientes de forma leve, eficiente e isolada do hardware, facilitando o deploy de aplicações em nuvem de forma escalável. O documento também apresenta exemplos hands-on de como instalar e usar Docker para criar e executar containers.
Este documento fornece uma introdução ao Docker, incluindo o que é Docker, como funciona usando containers leves, e suas vantagens para desenvolvedores e administradores de sistemas. O Docker permite empacotar e executar aplicações de forma portátil e auto-suficiente através de containers que podem rodar em qualquer lugar.
O documento explica o que é Docker, como ele empacota software em conjuntos autocontidos com tudo o que precisa para rodar, garantindo que sempre irá rodar da mesma forma independente do ambiente. Também discute termos como imagens, containers, volumes e registry.
Verdades que não querem te contar sobre DockerLuís Bianchin
Apresentação sobre algumas considerações sobre o uso de Docker.
TDC Floripa 2015: www.thedevelopersconference.com.br/tdc/2015/florianopolis/trilha-cloud-computing
O documento introduz o Docker, que automatiza a implementação de aplicações em containers leves e portáteis que podem rodar em diferentes ambientes. Ele discute como Docker resolve problemas com movimentação de ambientes de desenvolvimento para produção, manutenção de software e automação de testes de forma mais simples do que Virtual Machines (VMs) ou fazendo manualmente. Docker empacota aplicações e dependências em containers mais leves do que VMs, compartilhando recursos do sistema operacional.
O Docker permite criar, executar e implantar aplicações dentro de containers de software de forma rápida e confiável. Os containers fornecem isolamento de processos e recursos para as aplicações. O Docker começou como um projeto open source em 2013 e se tornou uma tecnologia popular para desenvolvimento e implantação de aplicações.
Containers para Software! A mais nova revolução, trazida ao mundo pela Dockers, rodando hoje na AWS. Venha conhecer esta inovadora e revolucionária tecnologia que vai mudar a forma como você desenvolve e implementa software.
Docker é uma plataforma que permite encapsular aplicações e suas dependências para torná-las portáteis e escaláveis. O documento discute como Docker funciona, como construir imagens Docker para aplicações PHP, e considerações sobre quem está usando Docker e o que vem por vir.
Docker é uma plataforma que cria containers para isolar aplicações e permitir que rodem de forma consistente em qualquer ambiente. Containers são mais leves do que VMs e permitem implantar software de forma rápida, segura e confiável. Docker oferece benefícios como eliminar problemas de compatibilidade, executar aplicações lado a lado de forma isolada, e entregar software mais rápido.
O documento descreve os conceitos básicos do Scrum, uma metodologia ágil para gestão e planejamento de projetos de software. O Scrum foca na entrega contínua de valor ao cliente através de sprints curtos, com papéis definidos de Product Owner, Scrum Master e equipe multidisciplinar. O planejamento ocorre em reuniões com a equipe para definir o escopo do sprint e acompanhamento do progresso é feito diariamente.
O documento discute a evolução da computação portátil ao longo do tempo, desde os primeiros notebooks pesados em 1979 até plataformas mais recentes como Raspberry Pi e Arduino. Também fornece exemplos de projetos que podem ser desenvolvidos com essas plataformas portáteis de baixo custo.
Este documento apresenta uma introdução ao Docker, incluindo sua arquitetura, comunidade, usos comuns e comandos básicos. O Docker permite isolar e empacotar aplicações em containers leves para facilitar a portabilidade e padronização do desenvolvimento. Exemplos demonstram como executar containers de Ruby e definir recursos como memória e CPU.
O documento descreve o que é o Docker, suas principais características como leveza, segurança e abertura. Explica as diferenças entre containers e máquinas virtuais e como o Docker pode reduzir custos e agilizar o deploy de aplicações. Detalha os principais comandos do Docker e o fluxo de trabalho, incluindo a criação de um Dockerfile.
Docker é uma plataforma open source usada para construir, executar e distribuir ambientes de forma portátil e simples. A oficina irá apresentar o que é Docker, sua arquitetura, instalação, comandos básicos como containers, imagens e Dockerfile, e orquestrar containers com Docker Compose.
O documento discute os desafios de entregar software para diferentes ambientes de forma simples e reproduzível. Ele propõe o uso de containers Docker para empacotar as aplicações e suas dependências, permitindo que elas sejam executadas de forma isolada e portável em diferentes ambientes como desenvolvimento, produção e servidores de integração contínua.
O documento apresenta Docker, um software de containerização que empacota aplicações e suas dependências para serem executadas de forma leve, portátil e isolada. Explica o que são containers, sua história, as vantagens sobre máquinas virtuais e boas práticas para desenvolvedores. Por fim, fornece referências adicionais sobre Docker.
Docker, facilitando a vida do desenvolvimentoSérgio Lima
Docker facilita a criação e administração de ambientes isolados para aplicações, permitindo que elas funcionem independentemente da infraestrutura. O documento discute o que é Docker, por que usá-lo, como usar imagens e containers básicos, construir imagens personalizadas e encapsular aplicações com Docker Compose. Finalmente, apresenta a plataforma Rancher para gerenciar containers em produção.
O documento apresenta uma introdução ao Docker, incluindo sua história, conceitos-chave como containers e imagens, e demonstrações práticas de como criar e gerenciar containers Docker. É explicado como o Docker permite isolar e empacotar aplicações em unidades portáteis através do uso de namespaces, cgroups e union file systems.
Docker: Primeiros Passos, Dicas e Truques no Gerenciamento de Containers - Ab...Renato Groff
Apresentação sobre primeiros passos no uso de Docker, bem como dicas e truques na manipulação de containers. Palestra online realizada para profissionais da empresa Tecnobank no dia 20/04/2020.
O documento fornece uma introdução sobre Docker, explicando que é uma ferramenta open source para gerenciar containers Linux. Ele descreve como Docker permite empacotar ambientes de forma leve, eficiente e isolada do hardware, facilitando o deploy de aplicações em nuvem de forma escalável. O documento também apresenta exemplos hands-on de como instalar e usar Docker para criar e executar containers.
Este documento fornece uma introdução ao Docker, incluindo o que é Docker, como funciona usando containers leves, e suas vantagens para desenvolvedores e administradores de sistemas. O Docker permite empacotar e executar aplicações de forma portátil e auto-suficiente através de containers que podem rodar em qualquer lugar.
O documento explica o que é Docker, como ele empacota software em conjuntos autocontidos com tudo o que precisa para rodar, garantindo que sempre irá rodar da mesma forma independente do ambiente. Também discute termos como imagens, containers, volumes e registry.
Verdades que não querem te contar sobre DockerLuís Bianchin
Apresentação sobre algumas considerações sobre o uso de Docker.
TDC Floripa 2015: www.thedevelopersconference.com.br/tdc/2015/florianopolis/trilha-cloud-computing
O documento introduz o Docker, que automatiza a implementação de aplicações em containers leves e portáteis que podem rodar em diferentes ambientes. Ele discute como Docker resolve problemas com movimentação de ambientes de desenvolvimento para produção, manutenção de software e automação de testes de forma mais simples do que Virtual Machines (VMs) ou fazendo manualmente. Docker empacota aplicações e dependências em containers mais leves do que VMs, compartilhando recursos do sistema operacional.
O Docker permite criar, executar e implantar aplicações dentro de containers de software de forma rápida e confiável. Os containers fornecem isolamento de processos e recursos para as aplicações. O Docker começou como um projeto open source em 2013 e se tornou uma tecnologia popular para desenvolvimento e implantação de aplicações.
Containers para Software! A mais nova revolução, trazida ao mundo pela Dockers, rodando hoje na AWS. Venha conhecer esta inovadora e revolucionária tecnologia que vai mudar a forma como você desenvolve e implementa software.
Docker é uma plataforma que permite encapsular aplicações e suas dependências para torná-las portáteis e escaláveis. O documento discute como Docker funciona, como construir imagens Docker para aplicações PHP, e considerações sobre quem está usando Docker e o que vem por vir.
Docker é uma plataforma que cria containers para isolar aplicações e permitir que rodem de forma consistente em qualquer ambiente. Containers são mais leves do que VMs e permitem implantar software de forma rápida, segura e confiável. Docker oferece benefícios como eliminar problemas de compatibilidade, executar aplicações lado a lado de forma isolada, e entregar software mais rápido.
O documento descreve os conceitos básicos do Scrum, uma metodologia ágil para gestão e planejamento de projetos de software. O Scrum foca na entrega contínua de valor ao cliente através de sprints curtos, com papéis definidos de Product Owner, Scrum Master e equipe multidisciplinar. O planejamento ocorre em reuniões com a equipe para definir o escopo do sprint e acompanhamento do progresso é feito diariamente.
O documento discute a evolução da computação portátil ao longo do tempo, desde os primeiros notebooks pesados em 1979 até plataformas mais recentes como Raspberry Pi e Arduino. Também fornece exemplos de projetos que podem ser desenvolvidos com essas plataformas portáteis de baixo custo.
O documento discute a automação de configuração de servidores usando Puppet. Ele explica que Puppet permite definir o estado desejado de recursos como pacotes, serviços e arquivos e garantir que esses recursos estejam sempre na configuração especificada, economizando tempo e evitando erros. Também lista algumas vantagens do Puppet como padronização, controle de versão e facilidade de uso.
O documento discute a evolução da computação ao longo dos anos, desde os primeiros computadores até dispositivos móveis e plataformas de prototipagem atuais como Raspberry Pi e Arduino. Também fornece conselhos sobre como iniciar projetos com essas plataformas de baixo custo.
O documento descreve a evolução da computação portátil ao longo do tempo, mencionando marcos como os primeiros notebooks em 1979, PDAs na década de 2000, e plataformas modernas como Arduino, Raspberry Pi e smartphones. O documento também discute como Arduino e Raspberry Pi podem ser usados complementarmente, com Arduino controlando periféricos e Raspberry Pi como controlador principal.
Guia do Papel e Responsabilidade do Scrum MasterPaulo Lomanto
O Guia do Papel e Responsabilidade do Scrum Master é um documento que contém dicas gerais sobre a figura do ScrumMaster em equipes de tecnologia que utilizam Scrum.
Esse guia foi concebido através de um trabalho conjunto de diversos profissionais e contém uma grande coletânea de dicas e guias para auxiliar os ScrumMasters a desempenharem melhor as suas atividades.
Este documento fornece uma definição detalhada do framework Scrum, incluindo seus papéis (Product Owner, Time de Desenvolvimento e Scrum Master), eventos (Sprint, Reuniões de Planejamento, Diárias, Revisão e Retrospectiva) e artefatos (Backlog do Produto e da Sprint, Incremento). O objetivo é guiar a implementação correta do Scrum para o desenvolvimento ágil e entrega contínua de valor.
O documento descreve os principais conceitos e processos do framework Scrum. Resume os papéis do Product Owner, Scrum Master e Time de Desenvolvimento, e explica os conceitos-chave de Product Backlog e Sprint.
Este documento fornece um guia definitivo para o framework Scrum, incluindo seus papéis (Product Owner, Equipe de Desenvolvimento, Scrum Master), eventos (Reunião de Planejamento da Sprint, Reunião Diária, Revisão da Sprint, Retrospectiva da Sprint) e artefatos (Backlog do Produto, Backlog da Sprint, Incremento). O objetivo do Scrum é permitir que equipes criem produtos de alto valor de forma iterativa e incremental.
O documento apresenta uma introdução ao Docker, definindo-o como uma ferramenta para empacotar e executar aplicações de forma isolada através de containers leves. Explica como o Docker difere de máquinas virtuais e quais são seus principais usos para desenvolvedores e infraestrutura. Por fim, demonstra comandos básicos do Docker em um exemplo prático.
O documento apresenta uma introdução ao Docker, definindo-o como uma ferramenta para empacotar e executar aplicações de forma isolada através de containers leves. Explica como o Docker difere de máquinas virtuais e quais são seus principais usos para desenvolvedores e infraestrutura. Por fim, demonstra comandos básicos do Docker em um exemplo prático.
O documento introduz o Docker, definindo-o como uma tecnologia de código aberto que permite empacotar software em unidades padronizadas chamadas contêineres para implantação rápida em qualquer ambiente. Ele também lista várias vantagens do Docker como portabilidade, versionamento, reutilização de componentes e orquestração de ambientes. Por fim, fornece uma abordagem prática para executar um container Docker.
Este documento apresenta uma introdução ao Docker, abordando os principais conceitos e comandos. Em 6 seções, discute: 1) os primeiros passos com Docker; 2) o que são imagens; 3) volumes e armazenamento; 4) como construir imagens; 5) comunicação entre containers; e 6) Docker Compose. A agenda inclui tópicos como a história dos containers, imagens vs containers, comandos básicos e exemplos práticos.
O Docker é uma plataforma aberta para desenvolvedores construírem e distribuírem aplicações usando containers. Ele usa containers Linux para isolar ambientes virtuais e compartilhar aplicações. O Docker é composto pelo Docker Engine, que empacota aplicações, e pelo Docker Hub, um serviço de nuvem para compartilhar imagens.
O Docker é uma plataforma aberta para desenvolvedores construírem e distribuírem aplicações. Ele utiliza containers Linux para isolar ambientes virtuais e permite que aplicações sejam rapidamente implantadas sem diferenças entre ambientes. O Docker é composto pelo Docker Engine e pelo Docker Hub.
Este documento discute o uso de Docker e Compose para criar e gerenciar containers de forma eficiente. Ele explica como namespaces e cgroups isolam processos no Linux, definem containers e suas vantagens sobre máquinas virtuais. Também apresenta conceitos básicos do Docker como imagens e repositório Docker Hub, e mostra como usar Dockerfile, docker CLI e docker-compose CLI na prática.
1. Docker permite empacotar aplicações em containers leves para executá-las de forma rápida e confiável em diferentes ambientes computacionais.
2. Diferente de máquinas virtuais, containers Docker utilizam recursos do sistema operacional de forma compartilhada para executar aplicações de forma isolada e leve.
3. Dockerfiles permitem declarar instruções para construir imagens Docker reutilizáveis de aplicações.
O documento discute Docker e Vagrant, incluindo uma breve história do Docker, como funciona a arquitetura Docker usando contêineres Linux, e como Docker e Vagrant podem ser usados para replicar ambientes de desenvolvimento e entregar aplicações.
O Docker tornou-se mais maduro com a versão 0.8, oferecendo suporte para Mac OS X e melhorias de desempenho. O Docker usa containers de aplicações para virtualização, diferentemente de soluções como VMware que usam hipervisores. A versão 0.8 trouxe melhorias significativas e disponibilizou o Docker para Mac OS.
O documento introduz o Docker, explicando como ele permite entregar software de forma fácil e consistente através de contêineres leves que isolam as aplicações e serviços. O Docker facilita a criação de ambientes idênticos entre desenvolvimento e produção e permite escalar aplicações com agilidade e controle.
Apresentação sobre o básico de Docker.
Build, Ship and Run Any Application Anywhere.
Docker Images, Docker registry, Docker Container, Docker store, Docker hub, dicas e problemas comuns.
Rafael Gomes apresenta-se como consultor e apaixonado por compartilhamento de conhecimento sobre tecnologias como Docker, Cloud e DevOps. Ele está escrevendo um livro gratuito sobre Docker para iniciantes e introduz os principais conceitos do ecossistema Docker.
O documento resume uma palestra sobre o uso de containers Docker no desenvolvimento .NET. A palestra inclui uma introdução ao Docker e como ele é usado, uma demonstração de uma aplicação .NET rodando em containers Docker e questões frequentes sobre Docker.
1) A palestra apresentará o uso de Docker no desenvolvimento .NET, incluindo como criar imagens e contêineres para aplicações .NET e como orquestrá-los com Docker Compose.
2) O palestrante Marcio Nizzola explicará o que é Docker e como funciona a virtualização de contêineres, em seguida demonstrará a criação de uma aplicação .NET usando Docker.
3) A aplicação .NET demonstrará o uso de contêineres Docker para hospedar bancos de dados, filas de mensagens e a própria aplicação .
Este documento discute as diferenças entre Vagrant, LXC e Docker para ambientes de desenvolvimento. Ele explica como cada ferramenta pode ser usada para criar ambientes isolados e reproduzíveis para desenvolvimento e como Docker e orquestradores como Docker Compose e Vagrant podem ser usados para criar aplicações com múltiplos containers. O documento também discute como escolher a melhor solução para cada caso com base nas necessidades da empresa.
Workshop Microservices - Distribuindo os Microservices com Docker e KubernetesRodrigo Cândido da Silva
Este documento apresenta um workshop sobre distribuição de microservices com Docker e Kubernetes. Os objetivos são compreender como empacotar projetos de microservices com Docker, publicar imagens em repositórios Docker, compor uma arquitetura de microservices com Docker Compose e orquestrar a arquitetura com Kubernetes.
Transportando as aplicações entre vários ambientes com DockerAécio Pires
Nesta palestra aprenderemos o que é Docker, conteiner, imagens e quais as principais ferramentas do Docker usadas para implantar e transportar contêineres de aplicação entre vários tipos de ambientes.
Semelhante a Freedomday2016 - Fique na caixinha, docker (20)
4. O que é docker ? História
Docker é um projeto open source (Apache License 2.0) para
empacotar, enviar e executar diversas aplicações em
containers.
Containers docker são estruturas de hardware e plataforma
que podem ser executadas em diversos ambientes, desde o
notebook até ambientes em nuvem - não requer que se
utilize uma linguagem, framework ou sistema de pacotes
específico. Isto os torna uma ferramenta para deploy e
escalabilidade de aplicativos web, bancos de dados e
serviços de backend sem depender de um provedor em
particular.
5. O que é docker ? História
O primeiro anúncio do Docker foi feito em 15 de Março de
2013 em um lighting talk por Solomon Hykes, CEO da
dorCloud em uma coferência de Phyton, sendo liberado,
como uma engine para deploy.
E em abril de 2015 a empresa já vale 1 bilhão de dólares.
Em outubro de 2015 já existem vários projetos: Docker
Compose, Docker Swarm, Docker Hub Enterprise, Docker
Machine, Docker engine, Docker Hub, Docker Registry,
Kitematic.
6. E antes ? História
Virtualização como um todo
● Mainframes (1970 -)
● Linux (1995 -)
● VMWare (~ 1999)
● User Mode Linux (2003 -)
● Provedores de VPS
● LXC
● Xen (2004 -)
● Amazon EC2 (2006 -)
● Software-Defined Networking (2008 -)
● OpenStack (2010 -)
● Dotcloud / Docker (2012 - )
7. O que são containers?
Quando o kernel do sistema operacional é capaz
de permitir múltiplas instâncias isoladas em
user-space, ao invés de somente uma, cada
instância pode ser chamada de container ou
software container).
Por compartilharem o mesmo kernel e parte dos
recursos, containers consomem muito menos
recursos do que uma máquina virtual.
10. Tecnologia de virtualização do
Docker
Funcionamento
Quando o kernel do sistema operacional é capaz de permitir
múltiplas instâncias isoladas em user-space, ao invés de somente
uma, cada instância pode ser chamada de container ou software
container).
Por compartilharem o mesmo kernel e parte dos recursos,
containers consomem muito menos recursos do que uma máquina
virtual.
12. Por que utilizar ? ? ?
* Rápida aprendizagem/utilização se comparado com outras
tecnologias de containers (LXC, cgroups, etc)
* Comunidade muito ativa
* Repositório publico de imagens, com compartilhamento e
colaboração
* Integração com ferramentas de DevOps (Zabbix, Puppet, Chef,
Vagrant, Ansible)
* Excelente desempenho e economia de recursos (espaço em
disco, processamento, memória)
* Versionamento de imagens e cache
15. * Juntamente com a cultura de DevOps, permite que você possa mais facilmente
utilizar ferramentas top de linha (linguagens, bibliotecas, etc) pois o ambiente já
está pronto para ser provisionado e, querendo ou não, algum nível de
documentação já foi gerado
* Precisa de outro sistema operacional ou distribuições além do GNU/Linux
* Personalização da imagem que será construída (ex.: Debian)
* Aumento da curva de aprendizagem (imagens personalizadas, logs, cron, rede)
E por que devo entrar nessa caxinha ?
16. * Constante evolução (ex.: rede)
* Agiliza a entrega de software
* Aumenta a agilidade de correção. É muito mais fácil e preciso reenviar um
container completo (que já passou cliclo docker) do que enviar um patch em um
arquitetura monolítica.
* Para implementá-lo é necessário que as várias áreas da empresa contribuam, o
que gera DevOps na prática.
E por que devo entrar nessa caxinha ?
18. E como utilizar ?
* docker create cria um container mas não o inicia
* docker run cria e inicia um container em apenas uma operação
* docker stop para um container
* docker start inicia um container já criado
* docker restart reinicia um container
* docker rm deleta um container
* docker kill envia um SIGKILL para o container
* docker attach irá conectar a um container em execução
* docker wait aguarda até que o container pare
19. E como utilizar ?
* docker ps exibe os containers em execução (-a para todos)
* docker logs obtém logs a patir do container (saída)
* docker inspect visualiza todas as informações de um container
(notavelmente o endereço IP)
* docker events exibe os eventos a partir do daemon em tempo real
* docker port exibe mapeamento de portas (NAT)
* docker top exibe os processos em execução no container
* docker stats exibe estatísticas da utilização de recursos no container
* docker diff exibe arquivos alterados no sistema de arquivos do
container
20. E vamos utilizando . . .
* docker cp copia arquivos ou diretórios entre o container e o sistema de
arquivos local
* docker export -o arquivo.tar nome_container exporta o sistema de
arquivos do container para um tarball
* docker exec executa comandos em um container
21. Ufa… mais ???
* docker images exibe todas as imagens
* docker import importa uma imagem de um arquivo tar
* docker build cria uma imagem a partir de um Dockerfile
* docker commit cria uma imagem a patir de um container
* docker rmi remove uma imagem
* docker load carrega uma imagem a partir de um arquivo tar, incluindo
camadas e tags
* docker save salva uma imagem em um arquivo tar com todas as camadas, tags
e versões
* docker history exibe o histórico de uma imagem
* docker tag renomeia a imagem (localmente ou no hub).