O documento discute como a tecnologia Docker pode ser usada como uma proposta interessante de crescimento estratégico em TI, principalmente em ambientes DevOps. Apresenta a história da computação e evolução dos datacenters para a virtualização e como os containers Docker resolvem problemas de eficiência de recursos e portabilidade de aplicações entre nuvens.
Aprendendo a utilizar a ferramenta docker para criar um ambiente de desenvolvimento para Ruby on Rails. Nesta aula, vamos utilizar comandos rails para gerar um scaffold simples com o banco de dados Postgresql em containers com docker.
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.
Apresentação Docker básico (história, comunidade, conceito, vm vs docker, comandos, dockerfile, docker compose, docker swarn, docker engine)
Para ver o slide em qualidade melhor, fazer o download
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
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
Aprendendo a utilizar a ferramenta docker para criar um ambiente de desenvolvimento para Ruby on Rails. Nesta aula, vamos utilizar comandos rails para gerar um scaffold simples com o banco de dados Postgresql em containers com docker.
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.
Apresentação Docker básico (história, comunidade, conceito, vm vs docker, comandos, dockerfile, docker compose, docker swarn, docker engine)
Para ver o slide em qualidade melhor, fazer o download
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
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
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, facilitando a vida do desenvolvimentoSérgio Lima
Dessa vez, vamos falar de um "calo" de muitos desenvolvedores, ambientes, vamos falar de uma das principais ferramentas que facilitam e nos auxiliam nessa jornada, o Docker.
Exemplos no githug: https://github.com/sergiosdlima/meetup-phpdf-docker
Apresentação feita no nono meetup PHP FC de Brasília.
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.
Slides da palestra ministrada no TDC São Paulo 2014, na trilha PHP. A idéia central da palestra é introduzir os conceitos da ferramenta Docker, apresentados da visão de um programador PHP, denotando as vantagens de se utilizar a ferramenta para o desenvolvimento de software em PHP.
Nesta apresentação faço uma abordagem prática sobre a tecnologia Docker e o seu uso, introduzo o usuário a visão geral de mercado de empresas que usam e fazem parte do ecossistema da tecnologia.
Trato desde o porque considerar usar a tecnologia até a implantação com sistemas distribuídos em cluster
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.
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, facilitando a vida do desenvolvimentoSérgio Lima
Dessa vez, vamos falar de um "calo" de muitos desenvolvedores, ambientes, vamos falar de uma das principais ferramentas que facilitam e nos auxiliam nessa jornada, o Docker.
Exemplos no githug: https://github.com/sergiosdlima/meetup-phpdf-docker
Apresentação feita no nono meetup PHP FC de Brasília.
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.
Slides da palestra ministrada no TDC São Paulo 2014, na trilha PHP. A idéia central da palestra é introduzir os conceitos da ferramenta Docker, apresentados da visão de um programador PHP, denotando as vantagens de se utilizar a ferramenta para o desenvolvimento de software em PHP.
Nesta apresentação faço uma abordagem prática sobre a tecnologia Docker e o seu uso, introduzo o usuário a visão geral de mercado de empresas que usam e fazem parte do ecossistema da tecnologia.
Trato desde o porque considerar usar a tecnologia até a implantação com sistemas distribuídos em cluster
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.
Apresentação Docker básico (história, comunidade, conceito, vm vs docker, comandos, dockerfile, docker compose, docker swarn, docker engine)
Para ver o slide em qualidade melhor, fazer o download
Como entregar software sem dor ?
Como garantir que o software que roda em desenvolvimento vai rodar em produção?
Como criar um ambiente em desenvolvimento que tenha a infraestrutura de produção sem duplicar a estrutura e os custos?
Como garantir que as várias camadas e peças de software funcionem bem?
Como garantir que sistemas complexos de web, notificações, cachê, loadbalance, banco de dados relacional, NoSQL, Redis, Memcache, Python, Php, Java e Rubi trabalhem juntos de forma simples?
Como acabar com a velha máxima de 'mas aqui rodou sem problemas'?
Se você alguma vez esbarrou nestas perguntas, você precisa assistir este vídeo!
https://www.certificacaolinux.com.br/conheca-o-docker/
Usando Docker no desenvolvimento .NET - Exemplos da utilização de docker no desenvolvimento .NET com Visual Studio ou diretamente via linha de comando.
Apresentação de Docker para Maiores realizado na Superlogica Tecnologias.
Link dos exemplos: https://github.com/msfidelis/DockerParaMaioresSuperlogica/
4. Objetivo
Demonstrar como a utilização da tecnologia Docker
pode ser empregada como uma proposta interessante
de crescimento estratégico em IT, principalmente em
ambiente DevOps.
6. História
Alan Turing, Matemático e Ninja
computacional e Pai da computação
moderna.
Em 1950 - Previu que na virada do
século os computadores teriam
memória na casa do 1GB.
7. História
Gordon Moore, co-founder da Intel.
Em meados de 1965, declarou que a
cada 18 meses a capacidade de
processamento dobra enquanto o custo
permanece constante.
Da qui 1 ano e meio, será possível
comprar o dobro de potência
computacional com mesmo preço do
valor corrente.
12. Transição
Parece familiar ?
Em 1995 aplicação em grande
totalidade Client Side - Geração Clipper
Em 2010 aplicação baseando em
cliente/servidor - Delphi + Oracle
1995
2010 (Bum da Internet )
14. Transição
Começa então o nascimento dos grandes centros de
processamento, ou seja, datacenters :)
EM Hardware - Latão
15. Datacenters
Setor investe 5% ao ano em melhoria.
Existem hoje 7.5 milhões de DCs no
mundo: privado, militares, provedores,
etc.
Isso equivale a mais de 200 milhões
de servidores espalhados pelo mundo.
Fonte: IDC e Symantec 2012
16. Datacenters
Em 2020 serão 35 Zettabytes de dados
entre fotos, vídeos e documentos.
44x mais dados do que em 2009, 0.8
Zettabytes.
Colinha: Gigabyte, Terabyte, Petabyte, ZettaByte
Fonte: IDC - 2010
19. Datacenters
Em um datacenter, 44% do TCO é
gasto com energia elétrica.
Estudo de 2010 da Universidade de
Stanford afirma que 1.2% de toda
energia produzida no EUA vai para
alimentar os DCs existentes.
Fonte: IDC - 2010
20. Datacenters
Problema: Mal uso de processamento
Dos 100% de processamento, segundo
pesquisa americana financiada pela
IDC - Usa-se apenas 15% do
processamento, 85% da máquina fica
OCISA!!!
Fonte: IDC - 2010
21. Datacenters
Conclusão:
Quer dizer que existem praticamente
200 milhões de servidores utilizando
a p e n a s 1 5 % d o p o d e r d e
processamento gastando energia
elétrica desnecessariamente ???
Fonte: IDC - 2010
23. Datacenters
Solução:
U t i l i z a r - s e d e u m c o n c e i t o
desenvolvido em 1960 para dividir
recursos de sistema de forma lógica
entre Mainframes para atender
diferentes aplicações, ou seja,
VIRTUALIZAÇÃO.
Fonte: IDC - 2010
24. Virtualização
Primeiro objetivo é reduzir fisicamente a
quantidade de servidores existentes.
Diminui o TCO no geral em 35%.
1 - Redução do consumo elétrico.
2 - Redução do gerenciamento.
3 - Redução da refrigeração.
Concentrando várias máquinas virtuais
em uma única máquina física.
Fonte: IDC - 2010
26. Virtualização
Sendo assim, não existe Cloud sem
virtualização, então…
Evolução de ilhas isoladas para polo de
recursos virtuais interconectadas
- Maximizar eficiência
- Reduzir custo
27. Questões
1 - Mas a virtualização realmente resolve o problema
de subutilização de processamento ?
2 - E como fazer deploy entre diferentes tecnologias de
cloud com diversas ferramentas de virtualização ?
28. Resposta…
AWS - Cost Optimization - Truted Advisor
Virtualizar resolve parcialmente o problema:
energético ok mas não a subutilização.
30. Docker
Docker é uma plataforma OpenSource para developers e sysadmin que
permite construir um pacote conhecido pelo nome de container, constituído
por uma distribuição linux sistema operacional + aplicação.
Uma máquina consegue executar vários containers diferentes de forma
organizada e separada dentro de um computador anfitrião de forma
semelhante aos que ocorre na virtualização tradicional.
COM MAIS PODER E MAIS FLEXIBILIDADE :)
31. Docker
O Docker é constituído por duas ferramentas:
1 - Docker Engine: Responsável pela criação, empacotamento e execução
Arquitetura cliente / server (Possível administrar remotamente)
2- Docker Hub: Serviço nas nuvens para o compartilhamento das
aplicações criadas em Docker.
Integrado com Git :)
32. Docker
Como assim ?
No mundo Docker, você não tem mais uma aplicação que roda em Ubuntu,
por exemplo. Você tem um contêiner que representa tudo isso!
E qual a vantagem disso ?
33. Docker
? ? ? ?
? ? ? ?
? ? ? ?
? ? ? ?
Como eu resolvo esse problema de
logística ?
40. Construir um container
FROM centos:centos6
MAINTAINER Carlos Smaniotto carlos.smaniotto@vivareal.com
ENV EPEL_URL http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm tar
ENV BASELINE_PACK tar openssh-server openssh-clients unzip vim yum-utils git golang wget
ENV ORA_URL http://download.oracle.com/otn-pub/java/jdk/8u5-b13/jdk-8u5-linux-x64.rpm
RUN yum install -y $EPEL_URL $BASELINE_PACK
#install oracle java
RUN wget --no-cookies --no-check-certificate --header "Cookie: oraclelicense=accept-securebackup-cookie"
"$ORA_URL" -O /var/tmp/jdk-8-linux-x64.rpm && yum localinstall -y /var/tmp/jdk-8-linux-x64.rpm &&
rm /var/tmp/* -rf && yum clean all
ENV JAVA_HOME /usr/java/default
Dockerfile
Infraestrutura em código :)
41. Construir um container - Herança
Podemos usar um container para criar um outro
container
FROM centos/6:5
…
FROM carlos.smaniotto/centos:java7
…
carlos.smaniotto/centos:java7
46. Docker
O Docker utiliza subsistemas do Kernel Linux Host que permitem rodar
somente a parte que interessa do Guest OS e compartilhar parte dos
recursos do kernel do sistema operacional Host.
Um dos projetos precursor para isso foi o LXC - IBM, Google, Parallels
entre outros.
O LXC é uma técnica de virtualização de nível baixo, camada de Kernel.
Usando para isso subsistemas como cgroups, namespaces.
Colinha: Host é o SO que esta no hardware e Guest é o virtual
47. Docker
RESUMINDO: Permite que recursos, libs e configurações sejam
“aprisionados” em um path e isolados
+…
Com a ajuda do AuFS.
O Docker funciona como uma camada sobre o LXC. Atualmente estão
desenvolvendo uma arquitetura de acesso direto aos subsistemas de
kernel: libcontainer
Colinha: Host é o SO que esta no hardware e Guest é o virtual
48. Docker
Logo… container é um grupo de processos isolados em um BOX Linux
gravados em um arquivo gerenciado pelo AuFS, o que permite inclusive
versionamento deste arquivo.
Para quem conhece chroot é um chroot com esteroides.
53. Docker
Qual a vantagem disso ?
Extremamente rápido: inclusive no startup do container.
Isola o sistema: chroot e processo único.
Fácil replicação: é só pegar a imagem, subir em outro ambiente e mandar
rodar o container dessa imagem.
Versionamento: Posso ter diferentes versões de minha aplicação
completa
55. Portanto… benefícios
• Portabilidade: Mesmo resultado em qualquer lugar
• Versionamento: Like Git - commit/push
• Compartilhamento: É possível compartilhar um container
• Reusabilidade: Você pode fazer um fork de um container para
atividades distintas.
• Desenvolvimento: Aplicação amarrada à "máquina"!
56. Revisão da Virtualização
Primeira onda: Década de 60 em mainframe, o nome foi abstraído por um
outro nome: sistema multi-tarefa.
Segunda onda: Começo de 2000 - Virtual Machines até os dias de hoje
Terceira onda: Iniciada fortemente no começo de 2014 com o projeto LXC.
Container de aplicação.
57. Conclusão
Nesta terceira onda, chamada de virtualização em containers, resolvemos
um problema que a segunda onda sozinha não consegue resolver.
Adicionalmente, gera flexibilidade que as VMs tradicionais não
conseguem, ou seja, mobilidade.
VM + Container = <3