Talk presented at Meetup Laravel SP #3 about docker from basics to docker orchestration.
Presented in 2015-05-07
Video da apresentação:
https://youtu.be/mR2px-mKjd0
13. LXC - Linux Containers
• Isolamento de processo
(chroot)
!
!
!
14. LXC - Linux Containers
• Isolamento de processo
(chroot)
• Isolamento de rede
!
!
15. LXC - Linux Containers
• Isolamento de processo
(chroot)
• Isolamento de rede
• Limitação de memória
!
16. LXC - Linux Containers
• Isolamento de processo
(chroot)
• Isolamento de rede
• Limitação de memória
• Isolamento de File System
17. LXC - Linux Containers
• Isolamento de processo
(chroot)
• Isolamento de rede
• Limitação de memória
• Isolamento de File System
• Dificuldade de
compartilhamento de
volumes
19. LXC - Linux Containers
• Instalando LXC:
sudo apt-get install lxc
• Criando um container busybox (minimalista):
sudo lxc-create --template busybox --name testando
setting root password to "root"
Password for 'root' changed
20. LXC - Linux Containers
• Rodando:
sudo lxc-start --name testando
udhcpc: SIOCGIFINDEX: No such device
Please press Enter to activate this console.
/
21. LXC - Linux Containers
• Rodando:
sudo lxc-start --name testando
udhcpc: SIOCGIFINDEX: No such device
Please press Enter to activate this console.
/
• Parando (tem que usar um outro terminal no host):
sudo lxc-stop --name testando
39. Tips
• Não é VM, é CONTAINER
• Porque container (padrão de transporte)
!
40. Tips
• Não é VM, é CONTAINER
• Porque container (padrão de transporte)
• Conceito de Guest e Host, também vale.
41. Tips
• Não é VM, é CONTAINER
• Porque container (padrão de transporte)
• Conceito de Guest e Host, também vale.
• Imagem vs Container (imagem é estática, container é
o que roda). Similar a VM e imagem da VM (AMI)
50. Instalation
• Debian, Arch, Fedora,
CentOS, AWS EC2, Mac OS
X, Suse, Microsoft Ubuntu,
Microsoft Windows, etc...
https://docs.docker.com/installation/#installation
51. Instalation
• Debian, Arch, Fedora,
CentOS, AWS EC2, Mac OS
X, Suse, Microsoft Ubuntu,
Microsoft Windows, etc...
• Mac OS X e Microsoft
Windows (boot2docker-vm)
https://docs.docker.com/installation/#installation
52. Docker Machine
• Cria uma VM com
boot2docker onde você
quiser
https://docs.docker.com/machine/
53. Docker Machine
• Cria uma VM com
boot2docker onde você
quiser
• Amazon Web Services, Digital
Ocean, Google Compute
Engine, IBM Softlayer,
Microsoft Azure, Openstack,
etc...
https://docs.docker.com/machine/
54. Docker Machine
• Cria uma VM com
boot2docker onde você
quiser
• Amazon Web Services, Digital
Ocean, Google Compute
Engine, IBM Softlayer,
Microsoft Azure, Openstack,
etc...
• Preparado para criação de
clusters (Swarms)
https://docs.docker.com/machine/
61. Why Compose?
• Imagine que você entrou no E-Bahya
• Maior e-commerce da África Latina com trocentos acessos por
minutos
62. Why Compose?
• Imagine que você entrou no E-Bahya
• Maior e-commerce da África Latina com trocentos acessos por
minutos
• Cada serviço do E-Bahya roda em um servidor na nuvem Alazão
Jeg Servers (escalável de acordo com a qtde de acessos - sempre
entre 5 e 10 instâncias rodando)
63. Why Compose?
• Imagine que você entrou no E-Bahya
• Maior e-commerce da África Latina com trocentos acessos por
minutos
• Cada serviço do E-Bahya roda em um servidor na nuvem Alazão
Jeg Servers (escalável de acordo com a qtde de acessos - sempre
entre 5 e 10 instâncias rodando)
• Serviços se comunicam entre si via rede privada
67. Why Compose?
Como você monta o ambiente na sua máquina?
a) vou instalando os pacotes: do banco, nginx / apache, etc
68. Why Compose?
Como você monta o ambiente na sua máquina?
a) vou instalando os pacotes: do banco, nginx / apache, etc
b) vou instalando mas na versão do site: nginx 1.2.1, php 5.6.1
69. Why Compose?
Como você monta o ambiente na sua máquina?
a) vou instalando os pacotes: do banco, nginx / apache, etc
b) vou instalando mas na versão do site: nginx 1.2.1, php 5.6.1
c) vou levantar um virtualbox com todos os serviços instalados
70. Why Compose?
Como você monta o ambiente na sua máquina?
a) vou instalando os pacotes: do banco, nginx / apache, etc
b) vou instalando mas na versão do site: nginx 1.2.1, php 5.6.1
c) vou levantar um virtualbox com todos os serviços instalados
d) manjo tudo de docker vou montar um container com a distro linux
que está nos servidores e os pacotes nas versões certas.
71. Why Compose?
Como você monta o ambiente na sua máquina?
a) vou instalando os pacotes: do banco, nginx / apache, etc
b) vou instalando mas na versão do site: nginx 1.2.1, php 5.6.1
c) vou levantar um virtualbox com todos os serviços instalados
d) manjo tudo de docker vou montar um container com a distro linux
que está nos servidores e os pacotes nas versões certas.
e) um container para cada serviço: um pro banco, um para a sessão,
um pro servidor web, um para o elastic search, um para o frontend e
um para o backend e assim por diante